这意味着什么在PHP中意味着什么?

时间:2010-11-08 14:58:14

标签: php oop this keyword

  

可能重复:
  PHP: self vs this

您好, 你能帮我理解一下PHP变量名$this的含义吗?

感谢您的帮助。

3 个答案:

答案 0 :(得分:16)

$this指的是您所在的班级。

例如

Class Car {

    function test() {
        return "Test function called";
    }

    function another_test() {
        echo $this->test(); // This will echo "Test function called";
    }
}

希望这有帮助。

答案 1 :(得分:2)

您可能希望查看In PHP5, what is the difference between using self and $this? When is each appropriate?

中的答案

基本上,$this指的是当前对象。

答案 2 :(得分:1)

$this是一个在对象中使用的受保护变量,$this允许您在内部访问类文件。

实施例

Class Xela
{
   var age; //Point 1

   public function __construct($age)
   {
      $this->setAge($age); //setAge is called by $this internally so the private method will be run
   }

   private function setAge($age)
   {
      $this->age = $age; //$this->age is the variable set at point 1
   }
}

它基本上是一个变量范围问题,$this只允许在一个已经启动的对象中,并且仅引用该对象及其父对象,您可以运行私有方法并将私有变量设置为范围外你做不到。

除了引用 class 中的静态方法之外,self关键字非常相似,静态基本上意味着你不能使用$this作为它不是一个对象,您必须使用self::setAge();并且如果setAge方法被声明为静态,那么您无法从该对象的瞬间调用它/ object

一些链接供您开始使用: