PHP 開発では、値が配列内にあるかどうかを判断する必要があることがよくあります。値が配列内にある場合は、 in_array() 関数を使用して直接判断できますが、値が配列内にない場合は、どうやって判断するのでしょうか?この記事では、値が配列内にあるかどうかを判断するさまざまな方法を紹介します。
方法 1: in_array() 関数を使用して反転
in_array() 関数は、値が配列内にあるかどうかを判断でき、そうでない場合は false を返します。
この機能を使用すると、値が配列内にないことを判断できます。
コード例:
$needle = 'apple'; $fruits = ['banana', 'orange', 'grape']; if (!in_array($needle, $fruits)) { echo $needle . ' is not in the fruits array.'; }
出力結果:
apple is not in the fruits array.
方法 2: array_search() 関数を使用する
array_search() 関数は、次の項目を検索できます。配列値を取得し、その値のキー名を返します。値が配列にない場合は false を返します。
この機能を使用すると、値が配列内にないことを判断できます。
コード例:
$needle = 'apple'; $fruits = ['banana', 'orange', 'grape']; if (array_search($needle, $fruits) === false) { echo $needle . ' is not in the fruits array.'; }
出力結果:
apple is not in the fruits array.
方法 3: array_diff() 関数を使用する
array_diff() 関数は 2 つまたは差分を計算できますつまり、配列にない値を見つけることができます。
判定対象の値を要素1つだけの配列として元の配列との差分を求めることができ、差分集合の結果が空配列であれば判定対象の値が元の配列にはありません。
コード例:
$needle = 'apple'; $fruits = ['banana', 'orange', 'grape']; if (empty(array_diff([$needle], $fruits))) { echo $needle . ' is not in the fruits array.'; }
出力結果:
apple is not in the fruits array.
方法 4: count() 関数を使用する
count() 関数を使用すると、次のことができます。配列の内容を取得する 要素の数は、検索する値が元の配列に出現する回数を決定するために使用され、数値が 0 の場合は、その値が元の配列にないことを意味します。
コード例:
$needle = 'apple'; $fruits = ['banana', 'orange', 'grape']; if (count(array_keys($fruits, $needle)) === 0) { echo $needle . ' is not in the fruits array.'; }
出力結果:
apple is not in the fruits array.
方法 5: foreach ループを使用する
foreach ループを使用して配列を走査し、判定項目 値が配列にあるかどうか。配列を走査しても判定対象の値が見つからない場合は、その値が配列内にないことを意味します。
コード例:
$needle = 'apple'; $fruits = ['banana', 'orange', 'grape']; $found = false; foreach ($fruits as $fruit) { if ($fruit === $needle) { $found = true; break; } } if (!$found) { echo $needle . ' is not in the fruits array.'; }
出力結果:
apple is not in the fruits array.
方法 6: array_key_exists() 関数を使用する
配列のキー名が文字列の場合array_key_exists() 関数を使用すると、キーが配列内に存在するかどうかを判断できます。
コード例:
$needle = 'apple'; $fruits = ['banana' => 1, 'orange' => 1, 'grape' => 1]; if (!array_key_exists($needle, $fruits)) { echo $needle . ' is not in the fruits array.'; }
出力結果:
apple is not in the fruits array.
結論
この記事では、値が配列にないことを判断するさまざまな方法を紹介します。 。それぞれの方法には長所と短所があり、状況に応じて最適な方法を選択できます。実際の開発においても、これらの手法を特定のシナリオと柔軟に組み合わせて使用することで、開発効率とコード品質を向上させることができます。
以上がPHPで値が配列内にあるかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。