1. 程式人生 > >php foreach 報 “Cannot create references to elements of a temporary array expression”

php foreach 報 “Cannot create references to elements of a temporary array expression”

href 直接 一行 開始 style 沒有 network 項目 each

今天在項目中用php foreach數據庫查詢結果時,為了方便沒有判斷數據是否存在,直接用(array)強制轉換數據時,剛開始網頁始終打不開,就報502,一頭懵,突然間php報“Cannot create references to elements of a temporary array expression”,找到報錯行,原始代碼如下:

foreach ((array) $net_arr as $k => &$val) {
    $network[$val[‘node_ip‘]][$val[‘ifname‘]] = $val;
}

後來改成如下代碼 ,一切恢復正常。

if (!empty($net_arr)) {
    foreach ($net_arr as $k => &$val) {
        $network[$val[‘node_ip‘]][$val[‘ifname‘]] = $val;
    }
}

網上搜索一下,只在 http://www.laruence.com/2008/11/20/630.html [風雪之隅] 的博客找到一行php源碼中報錯語句描述,具體是什麽原因沒有細究,記錄以提示自己以後寫代碼要嚴謹,一步一步寫!!!

php foreach 報 “Cannot create references to elements of a temporary array expression”