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

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

王林
王林Original
2019-10-18 10:06:372557Durchsuche

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

PHP-Wertübertragung:

Eine Änderung der Größe des Variablenwerts innerhalb des Funktionsumfangs hat keinen Einfluss 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.

Erklärung:

Wertübergabe: Es ist das Gleiche wie beim Kopieren. Ich habe zum Beispiel ein Haus und ich gebe dir Baumaterial, das genau dem meinen entspricht. Was auch immer du in deinem Haus tust, wird mich nicht beeinflussen Sie beeinflussen Sie, sie sind 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 genauso 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    
?>

Vor- und Nachteile: Die Übergabe von Werten ist zeitaufwändig, insbesondere bei großen Zeichenfolgen und Objekten. Dies ist ein sehr teurer Vorgang. Jede Operation innerhalb der Funktion entspricht der Operation von Die Übertragung von Variablen ist bei der Übertragung großer Variablen effizient.

Empfohlenes Tutorial: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonDer 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