> php教程 > php手册 > PHP关键字this指向当前对象指针

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

WBOY
풀어 주다: 2016-06-13 11:11:26
원래의
968명이 탐색했습니다.

  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 ),那么当然就输出了"heiyeluren"。

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


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿