首頁  >  文章  >  後端開發  >  為什麼foreach取二維數組的值的時候會這樣?

為什麼foreach取二維數組的值的時候會這樣?

WBOY
WBOY原創
2016-12-01 01:27:56938瀏覽

為什麼這個結果是136呢? 這個136id title name字段的首個字 $v2本身不就是一個一維數組嗎? $v2可以列印所有資料 為什麼$v2['id']的時候不是1 而是這種情況?這是為什麼?

<code>$bao=M('bao');
$res=$bao->select();
foreach($res as $v){
   foreach($v as $v2){
        echo $v2['id'];
   }
}</code>

為什麼foreach取二維數組的值的時候會這樣?

回覆內容:

為什麼這個結果是136呢? 這個136id title name字段的首個字 $v2本身不就是一個一維數組嗎? $v2可以列印所有資料 為什麼$v2['id']的時候不是1 而是這種情況?這是為什麼?

<code>$bao=M('bao');
$res=$bao->select();
foreach($res as $v){
   foreach($v as $v2){
        echo $v2['id'];
   }
}</code>

為什麼foreach取二維數組的值的時候會這樣?

不懂你要循環兩重幹嘛,你第一重循環就可以取id了,再來一重就對每一列做遍歷,這個就會出現問題了

裡面那個循環 對應的 就是每個字段了 所以$v2['id'] 是不存在的 如果錯誤提示開最大的話 會報一個notice

因為Selsect出來的資料是二維數組,而find出來的是一維數組。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn