Heim > Artikel > Backend-Entwicklung > Welche Parameterübergabemethoden gibt es für PHP-Funktionen? Sein Typ?
Parameterübergabemethode der PHP-Funktion: Wertübergabe: Änderungen innerhalb der Funktion haben keine Auswirkungen auf den ursprünglichen Wert. Übergabe als Referenz: Änderungen innerhalb einer Funktion wirken sich auf den ursprünglichen Wert aus. Typhinweise können die Übertragungsmethode angeben, z. B. Wertübergabe: function myFunction(int $value) oder Referenzübergabe: function myFunction(int &$value).
In PHP können Funktionsparameter als Wert oder als Referenz übergeben werden.
Wertübergabe
Bei der Wertübergabe wird der Wert des Parameters innerhalb der Funktion kopiert. Änderungen an den Parametern innerhalb der Funktion haben keinen Einfluss auf die ursprünglichen Werte außerhalb der Funktion.
Syntax:
function myFunction(int $value) { $value++; }
Beispiel:
$a = 10; myFunction($a); echo $a; // 输出 10,因为参数值被复制了
Übergabe per Referenz
Bei der Übergabe per Referenz werden die Parameter der Funktion nicht kopiert, sondern eine Referenz auf den Originalwert übergeben. Änderungen an den Parametern innerhalb der Funktion wirken sich auf die ursprünglichen Werte außerhalb der Funktion aus.
Syntax:
function myFunction(int &$value) { $value++; }
Beispiel:
$a = 10; myFunction($a); echo $a; // 输出 11,因为参数是引用原值
Die Parameterübergabemethode in PHP kann auch durch Typhinweise angegeben werden:
function myFunction(int $value)<code>function myFunction(int $value)
function myFunction(int &$value)
function myFunction(int &$value)
function calculatePi(int $n) { $sum = 0; for ($i = 1; $i <= $n; $i++) { $sum += 1 / (4 * pow(-1, $i) * (2 * $i - 1)); } return $sum; }Um zu vermeiden, dass bei jedem Aufruf der Funktion eine Kopie des $sum-Arrays erstellt wird, können wir die Referenzübergabe verwenden:
function calculatePi(int &$sum, int $n) { for ($i = 1; $i <= $n; $i++) { $sum += 1 / (4 * pow(-1, $i) * (2 * $i - 1)); } }Wenn wir nun die Funktion aufrufen : 🎜
$sum = 0; calculatePi($sum, 10000); echo $sum; // 输出近似值 π🎜Die Verwendung von Referenzübergaben kann die Leistung von Funktionen verbessern, insbesondere wenn es sich bei den Parametern um große Datenstrukturen handelt. 🎜
Das obige ist der detaillierte Inhalt vonWelche Parameterübergabemethoden gibt es für PHP-Funktionen? Sein Typ?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!