php引用變數

2021-08-18 17:38:16 字數 946 閱讀 9159

php引用變數

cow copy on write

php變數在賦值的時候不會新開闢乙個記憶體空間,只有在變數有改變操作的時候才會開闢新的記憶體空間

//定義變數a

$a = range(0, 10000);

var_dump(memory_get_usage());

//將變數a賦值給變數b

$b = $a;

var_dump(memory_get_usage());

//重新定義變數a

$a = range(0, 10000);

var_dump(memory_get_usage());

列印記憶體

int(988304) int(988352) int(1854096)
賦值後的記憶體占用沒有很大改變,只有在重新定義變數a的時候才會開闢新的記憶體空間;

定義引用變數的時候,兩個變數使用同乙個記憶體空間:

//定義變數a

$a = range(0, 10000);

var_dump(memory_get_usage());

//引用變數

$b = &$a;

var_dump(memory_get_usage());

//重新定義變數a

$a = range(0, 10000);

var_dump(memory_get_usage());

列印記憶體

int(988312) int(988360) int(988352)
定義引用變數的之後,兩個變數指向同乙個記憶體空間,改變變數的值,是直接改變記憶體空間中的值;

$a 和 $b 變數值相同;

php 引用變數

定義 不同變數名指向同一變數內容 位址 符號 定義變數 a,記憶體開闢乙個空間儲存 a a指向該空間 a a 定義變數 b,因為cow copy on write 特性,a,b都引向 a b a 如果改變 a的值,記憶體又開闢空間儲存,a指向該空間。此時 b還是指向原來的空間 a hello 可以使...

PHP引用變數

在php中引用意味著用不同的名字訪問同乙個變數內容使用 符號 定義變數 a range 0 100 var dump memory get usage int 399112 xdebug debug zval a a refcount 1,is ref 0 recount表示變數指向的記憶體位址引用...

php引用變數

php引用變數的概念和定義方式 概念 在php中引用意味著不同的名字訪問同乙個變數內容。定義方式 使用 符號 工作原理 header content type text html charset utf 8 定義乙個變數a a range 0,100 var dump memory get usag...