在PHP中,self的意思是“自己、本身”;self关键字用于指向类本身以及类实例,self关键字不是指向任何已经实例化的对象,而是用来指向类中的静态变量。
本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。
PHP中self的意思是什么
self是指向类本身,也就是PHP self关键字是不指向任何已经实例化的对象,一般self使用来指向类中的静态变量。
1、self可以访问本类中的静态属性和静态方法,可以访问父类中的静态属性和静态方法。
2、用self时,可以不用实例化的。
< ?PHP class Counter {undefined //定义属性,包括一个静态变量 private static $firstCount = 0; private $lastCount; //构造函数 function __construct() {undefined $this->lastCount = selft ::$firstCount; //使用PHP self关键字来调用静态变量,使用self 调用必须使用::(域运算符号) } //打印最次数值 function printLastCount() {undefined print( $this->lastCount ); } } //实例化对象 $countObject = new Counter(); $countObject->printLastCount(); //输出 1 ?>
我们这里只要注意两个地方,第6行和第12行。
我们在第二行定义了一个静态变量$firstCount,并且初始值为0,那么在12行的时候调用了这个值, 使用的是self来调用,并且中间使用::来连接,
就是我们所谓的域运算符,那么这时候我们调用的就是类自己定义的静态变量$frestCount, 我们的静态变量与下面对象的实例无关,它只是跟类有关,
那么我调用类本身的的,那么我们就无法使用this来引用,可以使用self来引用。
因为self是指向类本身,与任何对象实例无关。换句话说,假如我们的类里面静态的成员,我们也必须使用self来调用。
推荐学习:《PHP教程》
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。