Es gibt zwei Möglichkeiten, Werte in PHP zu übergeben: Wertübergabe und Referenzübergabe.

**熬夜选手
Freigeben: 2020-05-01 14:40:42
Original
410 Leute haben es durchsucht

Der Unterschied zwischen Wertübergabe und Referenzübergabe in PHP

Variablenübergabe nach Wert bedeutet: „Übergabe“ des Werts von a Variable zu einer anderen Variablen.

Es gibt nur zwei Möglichkeiten, Daten zu übertragen: Wertübertragung und Referenzübertragung. Standardmäßig verwendet PHP die Wertübergabe.

Werfen wir einen Blick auf die Unterschiede zwischen diesen beiden Liefermethoden:

Wertlieferung:

Das heißt kopieren den „Datenwert“ der Variablen auf der rechten Seite selbst und weisen Sie ihn dann der Variablen auf der linken Seite zu

Während des Passl-by-Value-Prozesses werden die formalen Parameter der aufgerufenen Funktion als lokal verwendet Teile der aufgerufenen Funktion bedeuten, dass Speicherplatz auf dem Stapel geöffnet wird, um den Wert des von der aufrufenden Funktion eingegebenen tatsächlichen Parameters zu speichern und so zu einer Kopie des tatsächlichen Parameters zu werden. Das Merkmal der Wertübertragung besteht darin, dass jede Operation der aufgerufenen Funktion an den formalen Parametern als lokale Variable ausgeführt wird und sich nicht auf den Wert der tatsächlichen Parametervariablen der aufrufenden Funktion auswirkt.

Beispiel:

$v1 = 1;
$v2 = $v1;
Nach dem Login kopieren

Nach der Wertübergabe haben die beiden Variablen keinen Einfluss aufeinander und sind unabhängig voneinander

<?php
//值传递
$v1 = 10;
$v2 = $v1;
echo "v2的值为:".$v2;//10
$v1 = 11;
echo "<br>v2的值为:".$v2;//10
Nach dem Login kopieren

Es gibt zwei Möglichkeiten, Werte in PHP zu übergeben: Wertübergabe und Referenzübergabe.

Übergabe als Referenz:

besteht darin, die Referenzbeziehung der Variablen rechts zu den Daten an die Variable links zu übergeben

Obwohl die formalen Parameter der aufgerufenen Funktion während des Pass-by-Reference-Prozesses auch Speicherplatz auf dem Stapel als lokale Variablen freigeben, wird zu diesem Zeitpunkt die Adresse der tatsächlichen Parametervariablen gespeichert, die von der aufrufenden Funktion eingegeben wurde . Jede Operation der aufgerufenen Funktion an den formalen Parametern wird als indirekte Adressierung verarbeitet, d. h. der Zugriff auf die tatsächlichen Parametervariablen in der aufrufenden Funktion erfolgt über die im Stapel gespeicherte Adresse. Aus diesem Grund wirkt sich jede Operation, die die aufgerufene Funktion an den formalen Parametern ausführt, auf die aufrufende Funktion aus.

<?php
//引用传递
$v1 = 10;
$v2 = &$v1;
echo "v2的值为:".$v2;//10
$v1 = 11;
echo "<br>v2的值为:".$v2;//11
Nach dem Login kopieren

Es gibt zwei Möglichkeiten, Werte in PHP zu übergeben: Wertübergabe und Referenzübergabe.

Zusammenfassung:

Die hier untersuchte Hauptsache ähnelt der Wertübergabe . Zitierte Frage. Verstehen Sie, dass durch die Übergabe eines Werts der Speicherplatz erneut geöffnet wird, was dem Kopieren des ursprünglichen Werts entspricht und unabhängig vom ursprünglichen Wert ist. Durch die Übergabe einer Referenz (Zeiger) wird nur ein Zeiger auf den ursprünglichen Speicherblock hinzugefügt. Wenn sich der Wert der Referenz ändert, wird der Wert der Speicheradresse geändert, auf den verwiesen wird, und alle Verweise, auf die verwiesen wird, haben sich geändert.

Das obige ist der detaillierte Inhalt vonEs gibt zwei Möglichkeiten, Werte in PHP zu übergeben: Wertübergabe und Referenzübergabe.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
1
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!