在PHP中,什么时候需要使用$this关键字?

9

在PHP中,什么时候需要使用$this关键字?据我所知,$this指的是在不知道对象名称的情况下创建的对象。

此外,$this关键字只能在方法内部使用?

一个示例可以很好地展示何时可以使用$this


10
面向对象编程(OOP)是一种广泛使用的编程范式,它通过将数据和操作数据的代码打包在一起来实现抽象化。在 PHP 中,您可以使用类和对象来实现 OOP。一个类是一个拥有属性(变量)和方法(函数)的结构。属性是类所包含的数据,方法是可对这些数据执行的操作。类定义了对象的状态和行为。一个对象是一个类的实例。当您创建一个对象时,您正在实例化该类。您可以通过访问对象的属性和方法来操作对象。要创建一个类,可以使用 class 关键字:class MyClass { public $myAttribute = 'default value'; public function myMethod() { echo 'Hello World!'; } }在这个例子中,我们定义了一个名为 MyClass 的类。它有一个名为 $myAttribute 的公共属性和一个名为 myMethod() 的公共方法。要实例化该类并访问其属性和方法,可以使用以下代码:$obj = new MyClass(); echo $obj->myAttribute; // 输出 "default value" $obj->myMethod(); // 输出 "Hello World!" - Your Common Sense
3
特别要注意这里的示例#2:http://php.net/manual/en/language.oop5.basic.php - RabidFire
$this 在 PHP 中不是一个关键字(而是一个伪变量),因此无法回答您的问题。 - hakre
12个回答

0

使用 $this 是为了引用属于当前对象的方法或实例变量

$this->name = $name 或者 $this->callSomeMethod()

这将使用当前对象子类化或未子类化的变量或方法。

如果您想特别调用父类的实现,您可以这样做:

parent::callSomeMethod()


-1
<?php
  class identity {
    public $name;
    public $age;
    public function display() {
      return $this->name . 'is'. $this->age . 'years old';
    }
  }
?>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接