今天在项目中用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;
    }
}
登录后复制

以上就是php foreach 报 “Cannot create references to elements of ...”的解决方法的详细内容,更多请关注Work网其它相关文章!

09-19 12:42