• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

关于php中数据访问的几点补充

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

  前几篇文章说了,parent、self、static关键字的使用,parent可以访问父类的静态方法和静态变量,self和static可以访问本类的静态成员等等,但实际上他们还有其他作用,来看一下:

 1 class BaseClass {
 2    public function test() {
 3        echo "BaseClass::test() called";
 4    }
 5    
 6    public function moreTesting() {
 7        echo "BaseClass::moreTesting() called";
 8    }
 9 }
10 
11 class ChildClass extends BaseClass {
12   private static $sValue = "static value";
13   const CONST_VALUE = 'A constant value';
14   public function moreTesting() {
15        echo "ChildClass::moreTesting() called";
16        parent::moreTesting();
17        self::called();
18        echo "CONST_VALUE: " . self::CONST_VALUE;
19        echo "sValue: " . static::$sValue;
20   }
21   public function called(){
22     echo "ChildClass::called() called";
23   }
24  }

 

先看parent关键字,它除了可以访问父类中的静态方法之外,它还可以用来访问被重写了的父类中的方法,比如方法moreTesting已经在类ChildClass中被重写,那么我偏偏需要访问父类中没被重写的方法怎么办,就用parent关键字

再来看self关键字,他除了可以访问本类中的静态成员之外,还可以用来访问本类中的方法,就是说一般的方法也可以访问,功能和$this->called();相同,但是注意不能用来访问本类的成员属性,也就是不能访问一般的变量,非静态变量只能用$this来访问,还有一点const用来定义常量,和define()方法差不多,常量一般用大写字母,并且不需要加$符号,常量一旦赋值将无法进行改变,代码中用self::CONST_VALUE来访问常量

最后是static关键字,她没有其他特殊的功能,和前面一样只能访问自身类中的静态成员

看来self关键字的功能要多于static关键字


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
【WEB】PHP弱类型语言比较发布时间:2022-07-10
下一篇:
如何在CentOS6.5上升级PHP发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap