Dieser Artikel führt hauptsächlich in das Verständnis von Rückgabereferenzen und lokalen statischen Variablen in PHP ein. Die allgemeine Methode zum Schreiben von Rückgabereferenzen besteht darin, & vor dem Methodennamen hinzuzufügen. Ich hoffe, es hilft allen.
Lesen Sie zuerst das Handbuch
==========
Die Rückgabe einer Referenz von einer Funktion muss sowohl bei der Deklaration der Funktion als auch bei der Zuweisung erfolgen den Rückgabewert an eine Variable. Verwenden Sie den Anführungszeichenoperator &:
<?php function &returns_reference() { $someref = 0; return $someref; } $newref = &returns_reference();//相当于 $newref = &$someref; ?>
Weitere Informationen zum Anführungszeichen finden Sie in der Erklärung zum Anführungszeichen.
Werfen wir einen Blick auf ein einzelnes Instanzregistrierungsmuster, das viele Open-Source-Codes gerne verwenden
class a{} class b{} function & aa($name) { static $class = array(); //局部静态变量 不随方法的执行结束而消失 而是坚持到整个源程序结束时才结束生命周期 if(!$class[$name]) //所以 此处的声明/初始化语句 只在首次声明时起作用 { //之后再调用此方法时, 静态变量不再重新初始化value $class[$name] = new $name(); } return $class[$name]; } $a = & aa('a'); $b = & aa('b'); $a2 = & aa('a'); $b2 = & aa('b'); echo $a === $a2 ? '$a和$a2是同一个实例化对象<br/>' : ''; echo $b === $b2 ? '$b和$b2是同一个实例化对象' : '';
Verwandte Empfehlungen:
Verwendung von PHP-Referenzen (&)
Detaillierte Erläuterung der PHP-Referenzzuweisung
statische PHP-Variablen Detaillierte Erläuterung der Initialisierungsinstanz
Das obige ist der detaillierte Inhalt vonGibt Referenzen und lokale statische Variablen in PHP zurück. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!