PHP关键字this指向当前对象指针

开发 后端
我们在学习PHP语言的时候,知道PHP中有一个关键字this,它是专门用来指向当前对象的指针。下面就来一起看看PHP关键字this的用法。

PHP关键字this是指向当前对象的指针。我们将和大家一起结合一个范例来细细研究一下PHP关键字this的相关用法和具体功能体现。#t#

  1. < ?php   
  2. class UserName  
  3. {   
  4. //定义属性   
  5. private $name;  
  6. //定义构造函数  
  7. function __construct( $name )  
  8. {  
  9. $this->name = $name; 
    //这里已经使用了this指针  
  10. }  
  11. //析构函数  
  12. function __destruct(){}   
  13. //打印用户名成员函数  
  14. function printName()  
  15. {  
  16. print( $this->name ); 
    //又使用了PHP关键字this指针  
  17. }  
  18. }   
  19. //实例化对象  
  20. $nameObject = new UserName
    ( "heiyeluren" );   
  21. //执行打印  
  22. $nameObject->printName();
     //输出: heiyeluren  
  23. //第二次实例化对象  
  24. $nameObject2 = new UserName( "PHP5" );  
  25. //执行打印  
  26. $nameObject2->printName(); //输出:PHP5  
  27. ?> 

 

我 们看,上面的类分别在11行和20行使用了this指针,那么当时this是指向谁呢?其实this是在实例化的时候来确定指向谁,比如第一次实例化对象 的时候(25行),那么当时this就是指向$nameObject对象,那么执行18行的打印的时候就把print( $this-><name )变成了print( $nameObject->name ),那么当然就输出了"heiyeluren"。

第二个实例的时候,print( $this->name )变成了print( $nameObject2->name ),于是就输出了"PHP5"。所以说,PHP关键字this就是指向当前对象实例的指针,不指向任何其他对象或类。

责任编辑:曹凯 来源: 在线阅读
相关推荐

2009-12-10 13:31:20

PHP self关键字

2009-11-26 19:24:54

PHP类CMS

2012-04-23 13:49:55

PHP技术

2011-05-17 13:04:20

Cconst

2021-07-28 06:53:02

C++Const指针传递

2009-12-08 18:02:06

PHP final关键

2009-12-03 19:06:44

PHP关键字globa

2022-01-04 16:35:42

C++Protected关键字

2012-03-01 12:50:03

Java

2009-09-17 09:30:00

Linq LET关键字

2009-09-02 09:24:03

C# this关键字

2018-04-20 15:56:09

Pythonglobal关键字

2009-08-21 14:58:56

C# this关键字

2013-01-30 10:12:14

Pythonyield

2022-06-29 08:05:25

Volatile关键字类型

2022-02-17 08:31:38

C语言staic关键字

2009-08-13 13:04:29

C# lock关键字

2019-11-06 10:36:43

MavenoptionalJava

2021-02-01 13:10:07

Staticc语言UNIX系统

2022-05-06 08:32:40

Pythonwith代码
点赞
收藏

51CTO技术栈公众号