PHP引用的一個面試題
$data = array(‘a’, ‘b’, ‘c’);
foreach($data as $key=>$val) {
$val = &$data[$key];
}
?>
問題1:程式執行時,每一次迴圈結束後變數$data的值是什麼?請解釋。
答:第一次迴圈時,把下標為0的成員,引用賦值給變數$val,$val與$data[0]內容相同,
要是其中一個改變,另一個也改變,此時,$data原樣輸出,只是$data[0]變成了引用
輸出結果 a b c
第二次迴圈時,$key的值為1,把$data[1]引用複製給$val.
由於$val與$data[0]也是引用關係,所以這時,$val,$data[0],$data[1]三者值同為’B’
$val不再與$data[0]有關係了,只與$data[1]是引用關係
// b b c
第三次迴圈時,$key的值為2,把$data[2]引用複製給$val,
由於$data[1]與$val是引用關係,所以都將改變$data[1]、$val、$data[2]三者值一樣
//b c c
問題2:程式執行完後,變數$data的值是什麼?請解釋。
答:結果為b c c
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2819/viewspace-2804574/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 分享一個PHP面試題總結PHP面試題
- 10個值得深思的PHP面試問題PHP面試
- 10個值得深思的 PHP 面試問題PHP面試
- Hive的一個面試題Hive面試題
- 一篇搞懂 PHP 的引用PHP
- 請教一個go切片引用的問題Go
- 我的PHP面試題PHP面試題
- PHP 面試題PHP面試題
- PHP面試題PHP面試題
- 又一個有趣的面試題面試題
- 關於PHP字串的一道面試題PHP字串面試題
- php的一些面試題總結(5)PHP面試題
- 11個提問頻率最高的PHP面試題PHP面試題
- 一個Promise面試題Promise面試題
- 一個物件多處引用的維護問題物件
- 【PHP】面試題整理PHP部分PHP面試題
- PHP引用的&理解PHP
- 陳皓:一個 fork 的面試題面試題
- PHP面試試題PHP面試
- PHP面試題收集PHP面試題
- 分享一波特別騷的 PHP 面試題目PHP面試題
- php面試題之一——PHP核心技術(高階部分)PHP面試題
- PHP 引用PHP
- 分享一個自己準備 PHP 面試的資料PHP面試
- 大公司的PHP面試題PHP面試題
- PHP相關面試中最經常涉及的12個問題PHP面試
- 經典的八個PHP高階工程面試題(附答案)PHP面試題
- 28個關於PHP核心技術的面試題,助力跳槽!PHP面試題
- 記一個面試題引發的思考面試題
- 一個 Handler 面試題引發的血案!!!面試題
- 關於Integer面試的一個問題面試
- PHP面試題總結PHP面試題
- 【SQL 學習】一個面試題SQL面試題
- 一個16年畢業生所經歷的php面試PHP面試
- 一個 16年畢業生所經歷的 PHP 面試PHP面試
- PHP5的OOP–$this引用PHPOOP
- php演算法面試題PHP演算法面試題
- PHP面試問題總結PHP面試