91亚洲精华国内精华精华液_国产高清在线精品一区不卡_精品特级一级毛片免费观看_欧美日韩中文制服有码_亚洲精品无码你懂的网站369

PHP 中的引用

 

上一篇我們了解下 C 語言里的三種參數(shù)傳遞。注意,PHP 中的引用跟 C 的引用是有區(qū)別的,跟 C 指針也不同(C 語言中的指針里面存儲(chǔ)的是變量的內(nèi)容,在內(nèi)存中存放的地址)。替代的是,引用是符號(hào)表別名。

  • 怎么說呢?在 PHP 中,變量名和變量內(nèi)容是不一樣的,因此同樣的內(nèi)容可以有不同的名字。在 PHP 中引用意味著用不同的名字訪問同一個(gè)變量內(nèi)容。最接近的比喻是 Unix 的文件名和文件本身——變量名是目錄條目,而變量內(nèi)容則是文件本身。引用可以被看作是 Unix 文件系統(tǒng)中的 hardlink。

舉個(gè)例子:

1 $a "nowamagic";
2 $b =& $a;
3 echo $b.$a;

這意味著 $a 和 $b 指向了同一個(gè)變量。同一個(gè)變量內(nèi)容有不同的變量名,引用就是這么個(gè)回事。

函數(shù)的引用傳遞(傳址調(diào)用)

 

我們先來一個(gè)函數(shù)引用傳遞問題:

1 function test(&$a)
2 {
3     $a $a+100;
4 }
5  
6 $b = 1;
7 test($b);
8 echo $b;

猜猜答案是多少?

  • 好像是 101 吧?函數(shù) test() 直接拿變量的地址作為參數(shù)……然后將變量的值+100. test($b) 這里$b傳遞給函數(shù)的其實(shí)是$b的變量內(nèi)容所處的內(nèi)存地址,通過在函數(shù)里改變$a的值就可以改變$b的值了。

這就是 PHP 的引用,有點(diǎn)類似 C 語言的指針但又有區(qū)別,后面我們會(huì)陸續(xù)探明引用這個(gè)東西。

?

穩(wěn)定

產(chǎn)品高可用性高并發(fā)

貼心

項(xiàng)目群及時(shí)溝通

專業(yè)

產(chǎn)品經(jīng)理1v1支持

快速

MVP模式小步快跑

承諾

我們選擇聲譽(yù)

堅(jiān)持

10年專注高端品質(zhì)開發(fā)
  • 返回頂部