Die Unterschiede zwischen static, self und $this in PHP sind: 1. [$this] stellt einen Verweis auf das Objekt dar, geschrieben in einer nicht statischen Methode in der Klasse; 2. Self unterscheidet sich von Dies zeigt auf die Klasse selbst und nicht auf ein instanziiertes Objekt. 3. „Static“ wird im Allgemeinen verwendet, um auf statische Variablen und statische Methoden in einer Klasse zuzugreifen.
Die Unterschiede zwischen static, self und $this in PHP sind:
1 Die Objektreferenz $this wird in einer nicht statischen Methode in einer Klasse geschrieben. Wenn die Klasse instanziiert wird, stellt jeder, der die Methode aufruft (normalerweise ein Objektaufruf), eine Referenz auf das Objekt dar. $this
<?php class Person { public $name; public function getName() { echo $this->name; } } $p = new Person(); $p2 = new Person(); $p->name = "小红"; $p2->name = "小明"; $p->getName(); // 小红 $p2->getName(); // 小明
self
<?php class Person { public static $name = "小红"; public static function getName() { echo self::$name; } } $p = new Person(); $p2 = new Person(); $p::getName(); // 小红 $p2::getName(); // 小红 $p::$name = "小明"; $p::getName(); // 小明 $p2::getName(); // 小明
3,
Allgemein verwendet Um auf statische Variablen und statische Methoden in einer Klasse zuzugreifen, handelt es sich auch um in der Klasse geschriebene Methoden. Es ist auch die Klasse, die die Methode statisch aufruft (gebunden an diese Klasse) Verwandte Lernempfehlungen:PHP-Programmierung vom Anfänger bis zum Expertenstatic
Das obige ist der detaillierte Inhalt vonWas sind die Unterschiede zwischen static, self und $this in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!