PHP关键字this指向当前对象指针
程序员文章站
2022-05-25 16:49:37
...
- ?php
- class UserName
- {
- //定义属性
- private $name;
- //定义构造函数
- function __construct( $name )
- {
-
$this->name = $name;
//这里已经使用了this指针 - }
- //析构函数
- function __destruct(){}
- //打印用户名成员函数
- function printName()
- {
-
print( $this->name );
//又使用了PHP关键字this指针 - }
- }
- //实例化对象
-
$nameObject = new UserName
( "heiyeluren" ); - //执行打印
-
$nameObject->printName();
//输出: heiyeluren - //第二次实例化对象
- $nameObject2 = new UserName( "PHP5" );
- //执行打印
- $nameObject2->printName(); //输出:PHP5
- ?>
我 们看,上面的类分别在11行和20行使用了this指针,那么当时this是指向谁呢?其实this是在实例化的时候来确定指向谁,比如第一次实例化对象 的时候(25行),那么当时this就是指向$nameObject对象,那么执行18行的打印的时候就把print( $this->
第二个实例的时候,print( $this->name )变成了print( $nameObject2->name ),于是就输出了"PHP5"。所以说,PHP关键字this就是指向当前对象实例的指针,不指向任何其他对象或类。
推荐阅读
-
js变量定义提升、this指针指向、运算符优先级、原型、继承、全局变量污染、对象属性及原型属性优先级
-
php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
-
PHP面向对象程序设计中的self、static、parent关键字用法分析
-
【Java】——详解关键字this到底是代表当前对象还是代表当前对象的引用?
-
PHP面向对象开发之类的常用关键字_PHP教程
-
PHP面向对象——clone关键字
-
php面向对象全攻略 (十) final static const关键字的使用
-
php面向对象类中的$this,static,final,const,self这几个关键字使用方法。
-
php面向对象之Static关键字
-
js变量定义提升、this指针指向、运算符优先级、原型、继承、全局变量污染、对象属性及原型属性优先级