ホームページ  >  記事  >  バックエンド開発  >  php 配列から指定された値を削除します

php 配列から指定された値を削除します

王林
王林オリジナル
2023-05-24 14:42:08523ブラウズ

PHPでは配列から指定した値を削除することがよくありますが、この処理は難しいことではありませんが、ある程度のスキルが必要です。

通常、これは組み込み関数 array_filter() を通じて実現できます。この関数は、配列要素をフィルタリングして新しい配列を返すことができる、PHP の強力な配列関数の 1 つです。以下は、配列内の null 値を削除する簡単な例です:

// 定义一个数组
$arr = array("hello", "", "world", "");

// 删除空值
$arr = array_filter($arr);

// 打印数组
print_r($arr);

出力結果:

Array
(
    [0] => hello
    [2] => world
)

ご覧のとおり、null 値が削除されました。 。

ただし、特定の値を削除する必要がある場合、array_filter() は適していません。それを実装するには自分でコードを書く必要があります。

以下はサンプル コードです:

// 定义一个数组
$arr = array("hello", "world", "php", "code", "php");

// 定义要删除的值
$deleteValue = "php";

// 循环数组并删除指定值
foreach($arr as $key => $value) {
    if($value == $deleteValue) {
        unset($arr[$key]);
    }
}

// 重新索引数组
$arr = array_values($arr);

// 打印数组
print_r($arr);

出力結果:

Array
(
    [0] => hello
    [1] => world
    [2] => code
)

上記のコードでは、まず配列 $arr と削除する値 $deleteValue を定義します。次に、foreach ループを使用して配列を走査し、現在の値が削除する値と等しい場合は、unset() 関数を使用して配列から要素を削除します。最後に、array_values() 関数を使用して配列のインデックスが再作成されます。

unset() 関数を使用しているため、配列添字はリセットされていないため、array_values() 関数を使用してインデックスを再作成する必要があることに注意してください。この手順を行わないと、配列の添え字が不連続になり、問題が発生する可能性があります。

要約すると、PHP 配列から指定した値を削除することは難しくなく、array_filter() 関数を使用するか、独自のコードを作成して実行できます。独自のコードを使用する場合は、添え字の連続性を確保するために配列のインデックスを再作成することに注意する必要があります。

以上がphp 配列から指定された値を削除しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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