任何人都可以告诉我$ this this keyword

时间:2016-04-29 07:22:19

标签: php

$ this关键字有什么用?两种情况的输出都相同,那么为什么我们需要使用$ this关键字。并使用$ this关键字。

<?php
 class Test
 {
  private $var;
  public function func1()
   {
    $this->var = 1;     
    return $this->var;
   }
  public function func2()
  {
    $var = 2;       
    return $var;
  }
}

$obj = new Test();

echo $obj->func1();
echo $obj ->func2();

?>

案例12和12的输出。

3 个答案:

答案 0 :(得分:1)

$ this指的是当前的目标

$ this-&gt; var = 1;

$ object-&gt; var值已更改为1.

$ var = 2;

$ object-&gt; var未更改。

&#13;
&#13;
 class Test
 {
  public $var = 0;
  public function func1()
   {
    $this->var = 1;     
    return $this->var;
   }
  public function func2()
  {
    $var = 2;       
    return $var;
  }
}

$obj = new Test();

echo "By default $obj->var is : ".$obj->var;
$obj->func1();
echo "<hr />By func1 $obj->var change to : ".$obj->var;
$obj->func2();
echo "<hr />By func2 $obj->var still is : ".$obj->var;
exit;
&#13;
&#13;
&#13;

输出

&#13;
&#13;
By default $obj->var is : 0
By func1 $obj->var change to : 1
By func2 $obj->var still is : 1
&#13;
&#13;
&#13;

答案 1 :(得分:0)

它是对当前对象的引用,它是面向对象代码中最常用的对象。

它实际上是引用当前类的实例。

答案 2 :(得分:0)

一般来说,我们可以说$ this用于引用当前对象,你可以在这里得到一个很好的解释What is $this keyword meant for?How to explain 'this' keyword in a best and simple way?