Heim > Artikel > Backend-Entwicklung > Detaillierte Erklärung der __toString()-Methode in PHP
__toString(), die Antwortmethode, wenn die Klasse als String behandelt wird
Funktion:
__toString()-Methode wird verwendet Für eine Klasse: So reagieren Sie, wenn sie als Zeichenfolge behandelt wird. Zum Beispiel, was „echo $obj;“ anzeigen soll.
Hinweis:
Diese Methode muss eine Zeichenfolge zurückgeben, andernfalls wird ein schwerwiegender Fehler der Stufe „E_RECOVERABLE_ERROR“ ausgegeben.
Warnung:
In der __toString()-Methode können keine Ausnahmen ausgelöst werden. Dies führt zu einem schwerwiegenden Fehler.
Code:
<?php class Person { public $sex; public $name; public $age; public function __construct($name="", $age=25, $sex='男') { $this->name = $name; $this->age = $age; $this->sex = $sex; } public function __toString() { return 'go go go'; } } $person = new Person('小明'); // 初始赋值 echo $person;
Ergebnis:
go go go
Was passiert also, wenn die magische Methode __toString() ohne die Klasse ausgeführt wird? Testen wir es:
Code:
<?php class Person { public $sex; public $name; public $age; public function __construct($name="", $age=25, $sex='男') { $this->name = $name; $this->age = $age; $this->sex = $sex; } } $person = new Person('小明'); // 初始赋值 echo $person;
Ergebnis:
Catchable fatal error: Object of class Person could not be converted to string in D:\phpStudy\WWW\test\index.php on line 18 很明显,页面报了一个致命错误,这是语法所不允许的。
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung der __toString()-Methode in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!