php foreach循環中unset后續的鍵值問題


實例:

$arr=array('a','b','c','d','e','f');
foreach($arr as $index=>$tmp){
  echo $index.'=>'.$tmp.PHP_EOL;
  unset($arr[1]);
}
print_r($arr);
exit;

輸出結果為:

0=>a
1=>b
2=>c
3=>d
4=>e
5=>f
Array
(
[0] => a
[2] => c
[3] => d
[4] => e
[5] => f
)

 

總結:在foreach內UNSET當前循環的數組信息不會影響數組中的鍵值,只有當本數組結束后unset的值才會被真正的釋放掉。

當您在循環0鍵值的時候想把后面還未循環的1-5號鍵值unset不循環是不成立的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM