天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP中foreach循環中使用引用要注意的地方

復制代碼 代碼如下:
foreach ($array as &$row) {
$row = explode('/', $row);
}
foreach ($array as $row) {
//do something
}

這么寫,在第二個循環會出邏輯錯誤,加入第二個循環中do something的地方是輸出$row,循環到最后一個的時候的輸出是倒數第二個元素,而不是最后一個

要這么寫
復制代碼 代碼如下:
foreach ($array as &$row) {
$row = explode('/', $row);
}
unset($row);
foreach ($array as $row) {
//do something
}

或者第一個循環這么寫
復制代碼 代碼如下:
foreach ($array as $key => $row) {
$array[$key] = explode('/', $row);
}


說一下原理
第一個循環使用了引用,循環結束后,$row引用的是$array數組的最后一個元素,當開始第二個循環的時候,$row變量每次循環都會被賦一個新值,在php中,如果一個內存空間是被引用的,那么當改變它的時候是直接改變這塊內存空間的值,也就是說,當第二個foreach的第一次循環,$array的最后一個元素的值就被改變為$array的第一個元素的值,第二次循環的時候,改變為第二個元素的值,倒數第二次循環的時候,被改變為倒數第二個元素值,而最后一次循環的時候得道的值必然是那個倒數第二個值
當然,如果php的for循環有作用域的話,也不會出現此問題.....

php技術PHP中foreach循環中使用引用要注意的地方,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 激情欧美日韩一区二区 | 中文字幕人妻无码系列第三区 | 99精品电影一区二区免费看 | 最近中文字幕免费高清MV视频6 | 亚洲 日韩 欧美 国产专区 | 亚洲国产欧美日本大妈 | 色偷拍自怕亚洲在线 | 国产精品嫩草99AV在线 | 2022国产91精品久久久久久 | 亚洲欧美日韩精品自拍 | 无遮掩H黄纯肉动漫在线观看星 | 国产精品97久久AV麻豆 | 青青草狠狠干 | 第一次破女视频出血视频 | 少妇人妻偷人精品视蜜桃 | 四虎国产精品永久一区高清 | 亚洲国产cao | 色婷婷我要去我去也 | 伊人久久网站 | 99久久精品免费看国产一区二区三区 | 内地同志男16china16 | 国产美女视频一区二区二三区 | 91情国产l精品国产亚洲区 | 国模孕妇模特季玥之粉红 | 毛片手机在线 | 伊人久久大香线蕉观看 | 国产精品久久久久婷婷五月色 | 在线观看免费国产成人软件 | 国产亚洲精品线观看不卡 | 岛国大片在线观看免费版 | 久久久久综合 | 精品国产乱码久久久久久免费 | 2019久久这里只精品热在线观看 | 天美传媒果冻传媒入口视频 | 強姧伦久久久久久久久 | 精品伊人久久 | 国产在线精品视频免费观看 | 一级做a爰片久久毛片潮喷动漫 | 日本肉肉口番工全彩动漫 | 99久久久精品免费观看国产 | 千禧金瓶梅快播 |