ホームページ >バックエンド開発 >PHPチュートリアル >PHPで要素の設定を解除した後に配列キーをリベースするにはどうすればよいですか?

PHPで要素の設定を解除した後に配列キーをリベースするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-30 08:33:27915ブラウズ

How to Rebase Array Keys After Unsetting Elements in PHP?

要素の設定を解除した後に配列キーを再ベースする

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。