PHPで値が配列内にあるかどうかを確認する方法

PHPz
リリース: 2023-04-21 09:33:09
オリジナル
481 人が閲覧しました

PHP は、さまざまなデータ型とデータ構造をサポートする、広く使用されているプログラミング言語です。配列は、大量のデータを保存し、簡単に操作できるため、開発プロセスにおいて不可欠なデータ構造でもあります。ただし、ある値が配列内にあるかどうかを判定する必要がある場合があり、その際にはいくつかの判定方法を使用する必要があります。この記事では、PHPで配列が配列に含まれているかどうかを判断する方法を紹介します。

1. in_array() 関数

PHP は、値が配列内にあるかどうかを判断するために使用できる in_array() 関数を提供します。構文は以下のとおりです。

bool in_array (mixed $needle , array $haystack [, bool $strict = FALSE ] )

このうち、$needleは判定対象の値を表し、 $haystack は検索配列を表し、$strict は厳密な型一致を使用するかどうかを示します。この関数はブール値を返します。$needle が $haystack にある場合は true を返し、それ以外の場合は false を返します。

以下は簡単な例です:

$fruits = array("apple", "orange", "banana", "peach");
if (in_array("apple", $fruits)) {

echo "苹果在数组中";
ログイン後にコピー

} else {

echo "苹果不在数组中";
ログイン後にコピー

}
?>

出力結果:

配列内の Apple

2. array_search() 関数

PHP では、配列内の指定された値を検索し、対応する値を返すために使用される array_search() 関数も提供しています。キーの値。見つからない場合は false を返します。構文は次のとおりです。

mixed array_search (mixed $needle , array $haystack [, bool $strict = FALSE ] )

このうち、$needle は検索する値を表し、 $haystack は検索対象の値を表し、array、$strict は厳密な型一致を使用するかどうかを示します。 $needle が見つかった場合は、対応するキー値が返され、それ以外の場合は false が返されます。

これは例です:

$fruits = array("apple", "orange", "banana", "peach");
$ key = array_search("banana", $fruits);
if ($key !== false) {

echo "找到了,它的键值是:" . $key;
ログイン後にコピー

} else {

echo "未找到";
ログイン後にコピー

}
?>

出力結果:

見つかりました、そのキー値: 2

3. in_array() と array_search() の違い

in_array( )と array_search() はどちらも、値が配列内にあるかどうかを判断するために使用できますが、いくつかの違いがあります。 in_array() 関数は true または false のみを返し、一致するキー値を取得できませんが、array_search() 関数は一致するキー値または false を返すことができます。

したがって、in_array() 関数と array_search() 関数を使用する場合は、特定のニーズに応じて選択する必要があります。特定の値が配列内にあるかどうかだけを知りたい場合は、in_array() 関数を使用でき、一致するキー値を取得する必要がある場合は、array_search() 関数を使用できます。

4. in_array() および array_search() の注意事項

実際の開発プロセスでは、in_array() および array_search() 関数を使用する際にもいくつかの点に注意する必要があります。注意すべき点がいくつかあります。

  1. 配列の値は、配列やオブジェクトではなく、スカラー型である必要があります。
  2. 配列の値が文字列型の場合は、大文字と小文字の問題に注意する必要があります。 in_array() 関数と array_search() 関数は大文字と小文字を区別し、デフォルトでは厳密な型一致を使用しません。
  3. array_search() 関数を使用する場合は、比較に等価演算子 (===) を使用する必要があります。そうしないと、型変換エラーが発生する可能性があります。

要約すると、PHP には、値が配列内にあるかどうかを判断するための 2 つの関数 in_array() と array_search() が用意されています。適切な関数を選択することで、値が配列内にあるかどうかを簡単に判断できます。 array. 配列内で、対応するキー値を取得します。これらの関数を使用するときは、配列の値の型と大文字小文字、および厳密な型一致の問題に注意する必要があります。この記事が PHP 開発者に役立つことを願っています。

以上がPHPで値が配列内にあるかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート