取消設定元素後重新設定陣列鍵基底
在PHP 中使用陣列時,經常會遇到需要刪除特定元素的情況。但是,取消設定元素可能會導致索引間隙,可能會導致混亂和不正確的結果。
問題
考慮具有以下值的陣列:
$array = [1, 2, 3, 4, 5];
如果循環遍歷數組並取消設定某些鍵,索引間隙將變很明顯:
<code class="php">foreach ($array as $i => $info) { if ($info == 1 || $info == 2) { unset($array[$i]); } }</code>
這將導致數組缺少鍵:
[ 2 => 3, 3 => 4, 4 => 5 ]
解
要正確重置數組的鍵,讓它們再次從零開始,請使用array_values() 函數:
<code class="php">$array = array_values($array);</code>
此函數建立一個帶有rebased 的新陣列鍵,從零開始。
範例
將 array_values() 套用於上面的陣列將產生:
[ 0 => 3, 1 => 4, 2 => 5 ]
以上是在 PHP 中取消元素設定後如何重新設定數組鍵的基數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!