定義函數時前面加個&號代表什么?
這是論壇的E蝸牛童鞋的帖子里看到的,準確的說明了函數前面加個&的作用,以及具體的效果.
函數的引用返回先看代碼:
下面解釋下:通過這種方式$a=test();得到的其實不是函數的引用返回,這跟普通的函數調用沒有區別
至于原因:這是PHP的規定
用上面的例子來解釋就是:$a=test()方式調用函數,只是將函數的值賦給$a而已, 而$a做任何改變 都不會影響到函數中的$b,而通過$a=&test()方式調用函數呢, 他的作用是將return $b中的 $b變量的內存地址與$a變量的內存地址指向了同一個地方,即產生了相當于這樣的效果($a=&b;) 所以改變$a的值 也同時改變了$b的值,所以在執行了如下代碼:以后,$b的值變為了5