Heim >Backend-Entwicklung >PHP-Problem >Was ist der Unterschied zwischen der Wertübergabe und der Referenzübergabe in PHP?

Was ist der Unterschied zwischen der Wertübergabe und der Referenzübergabe in PHP?

青灯夜游
青灯夜游Original
2019-11-18 18:13:054005Durchsuche

Was ist der Unterschied zwischen der Wertübergabe und der Referenzübergabe in PHP?

PHP-Wertübertragung: Innerhalb des Funktionsumfangs hat die Änderung des Variablenwerts keine Auswirkungen auf den Variablenwert außerhalb der Funktion.

PHP-Übergabe per Referenz: Innerhalb des Funktionsumfangs werden alle Änderungen am Wert auch außerhalb der Funktion widergespiegelt, da die Übergabe per Referenz die Speicheradresse übergibt.

Wertübergabe: Es ist dasselbe wie beim Kopieren. [Ich habe zum Beispiel ein Haus, das genau das gleiche ist wie meines, ich werde es in meinem Haus tun , unabhängig voneinander. 】

<?php    
$testa=1;               //定义变量a 
$testb=2;               //定义变量b    
$testb = $testa;       //变量a赋值给变量b    
echo $testb;            //显示为1    
?>

Referenzübergabe: Ähnlich wie bei Zeigern in der C-Sprache fühlt es sich fast gleich an. Wenn ich Ihnen zum Beispiel einen Schlüssel gebe, können wir beide das Haus betreten. Was auch immer Sie im Haus tun, wird sich auf mich auswirken.

<?php    
$param2=1;               //定义变量2    
$param1 = &$param2;      //将变量2的引用传给变量1    
echo $param2;            //显示为1    
$param1 = 2;             //把2赋值给变量1    
echo $param2;            //显示为2    
?>

[Vorteile und Nachteile:] Die Übergabe von Werten ist zeitaufwändig, insbesondere bei großen Zeichenfolgen und Objekten. Dies ist eine sehr teure Operation, die der Übertragung von Referenzen und jeder anderen Operation entspricht Der Vorgang der Variablenübertragung ist effizient bei der Übertragung großer Variablen!

Empfohlenes Lernen: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen der Wertübergabe und der Referenzübergabe in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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