要素の設定を解除した後に配列キーを再ベースする
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>
この関数は、リベースされた新しい配列を作成します。
例
上記の配列に array_values() を適用すると、次のようになります:
[ 0 => 3, 1 => 4, 2 => 5 ]
以上がPHPで要素の設定を解除した後に配列キーをリベースするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。