Heim > Artikel > Backend-Entwicklung > Verstehen Sie den Unterschied zwischen der Wertübergabe und der Referenzübergabe in PHP genau
Der Unterschied zwischen PHP-Wertübergabe und Referenzübergabe. Wann soll ein Wert und wann eine Referenz übergeben werden
(1) Wert übergeben: Alle Änderungen am Wert innerhalb des Funktionsumfangs werden außerhalb der Funktion ignoriert
(2) Übergeben Referenz: Funktionsumfang Alle Änderungen am internen Wert spiegeln diese Änderungen auch außerhalb der Funktion wider
(3) Vor- und Nachteile:
A: Bei der Wertübergabe muss PHP den Wert kopieren. Insbesondere bei großen Strings und Objekten kann dies ein kostspieliger Vorgang sein.
B. Die Übergabe als Referenz erfordert kein Kopieren des Werts, was für die Leistungsverbesserung sehr gut ist.
<?php header('content-type:text/html;charset=utf-8'); //探讨一下 array , null, 对象 ,资源的默认传递方式 // 结论 (1) array 默认是值传递,通过加 & 可以引用传递 // (2) null 默认是值传递,通过加 & 可以引用传递 // (3) 资源 是值传递.通过加 & 可以引用传递 // (4) 对象默认也是值传递,但是对象值传递是对象标识符 $hero = array('no1'=>'蝙蝠侠', 'no2'=>'超人'); $hero2 = &$hero; $hero2['no1'] = '蜘蛛侠'; echo '<pre class="brush:php;toolbar:false">'; var_dump($hero); var_dump($hero2); $a = null; $b = &$a; $b = 'abc'; var_dump($a, $b);
Empfohlenes Video-Tutorial: PHP-Video-Tutorial
Das obige ist der detaillierte Inhalt vonVerstehen Sie den Unterschied zwischen der Wertübergabe und der Referenzübergabe in PHP genau. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!