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

PHPz
リリース: 2023-04-26 10:16:40
オリジナル
568 人が閲覧しました

PHP プログラミングでは、要素が配列内に存在するかどうかを確認する必要があることがよくあります。 PHP には、これを行うためのいくつかの方法が用意されています。この記事では、要素が配列内にあるかどうかを判断する最も一般的な方法のいくつかを検討します。

最初のメソッドは in_array() 関数です。その構文は次のとおりです。

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

この関数の機能は、$needle 要素を検索することです。 $haystack 配列。 $needle 要素が $haystack 配列に存在する場合、この関数は true を返し、それ以外の場合は false を返します。

ここで、3 番目のパラメーター $strict はオプションのパラメーターであり、よりきめ細かい制御を行うことができることに注意してください。デフォルトでは、$strict パラメーターは false で、弱く型指定された比較を示します。これは、関数が $needle 配列と $haystack 配列の要素の間で弱い型の比較を実行することを意味します。たとえば、文字列「1」と数値 1 は等しいとみなされます。 $strict パラメーターが true (厳密に型指定された比較を示す) の場合、関数は要素の型に従って比較します。

以下はサンプル プログラムです:

<?php
$haystack = array(&#39;apple&#39;, &#39;banana&#39;, &#39;cherry&#39;);
if (in_array(&#39;apple&#39;, $haystack)) {
    echo "&#39;apple&#39; is in the array.";
} else {
    echo "&#39;apple&#39; is not in the array.";
}
?>
ログイン後にコピー

上記プログラムの出力結果: 'apple' が配列内にあります。これは、'apple' 要素が $haystack に存在するためです。配列。

2 番目のメソッドは、array_search() 関数です。構文は次のとおりです。

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

この関数の機能は、$needle 要素を検索することです。 $haystack array を返し、$haystack 配列内の要素のキーを返します。 $needle 要素が $haystack 配列に存在しない場合、関数は false を返します。

in_array() 関数と同様、$strict パラメータはオプションです。 $strict パラメーターが true の場合、強力な型比較が実行されます。

以下はサンプル プログラムです:

<?php
$haystack = array(&#39;apple&#39;, &#39;banana&#39;, &#39;cherry&#39;);
$key = array_search(&#39;banana&#39;, $haystack);
if ($key !== false) {
    echo "&#39;banana&#39; is in the array. Its key is: $key";
} else {
    echo "&#39;banana&#39; is not in the array.";
}
?>
ログイン後にコピー

上記プログラムの出力結果は次のとおりです: 'banana' が配列内にあり、そのキーは: 1.これは、'banana' 要素が $haystack 配列に存在し、そのキーが 1 であるためです。

3 番目の方法は、in_array() のキー バージョンである array_key_exists() 関数を使用することです。その構文は次のとおりです。

bool array_key_exists(mixed $key, array $array)

この関数の機能は、$array 配列内でキー名 $key を検索することです。キー名 $key が $array 配列に存在する場合、この関数は true を返し、それ以外の場合は false を返します。

以下はサンプル プログラムです:

<?php
$array = array(&#39;a&#39; => 'apple', 'b' => 'banana', 'c' => 'cherry');
if (array_key_exists('a', $array)) {
    echo "'a' is a key in the array.";
} else {
    echo "'a' is not a key in the array.";
}
?>
ログイン後にコピー

上記プログラムの出力結果は次のようになります: 'a' は配列内のキーです。これは、'a' キー名が配列内に存在するためです。 $array 配列。

4 番目の方法は、isset() 関数を使用することです。その構文は次のとおりです。

bool isset(mixed $var [,mixed $... ])

この関数は、変数が設定されているかどうか、null ではないかどうかを確認するために使用されます。配列内の要素が存在するかどうかを確認するために使用できます。たとえば、 isset() 関数を使用して、配列内のキーが存在するかどうかを確認できます。

以下はサンプル プログラムです:

<?php
$array = array(&#39;a&#39; => 'apple', 'b' => 'banana', 'c' => 'cherry');
if (isset($array['a'])) {
    echo "'a' is a key in the array.";
} else {
    echo "'a' is not a key in the array.";
}
?>
ログイン後にコピー

上記プログラムの出力結果は次のようになります: 'a' は配列内のキーです。これは、'a' キー名が配列内に存在するためです。 $array 配列。

最後に、上記 4 つのメソッドの戻り値はすべてブール値であることに注意してください。これらは、if ステートメントや while ステートメントなどのフロー制御ステートメントで簡単に使用できます。

この記事では、PHP を使用して要素が配列内にあるかどうかを判断する 4 つの方法について説明しました。これらの方法は非常に一般的に使用されており、理解して使用するのが簡単です。 PHP プログラミングタスクをより適切に完了するには、実際の状況に応じて最適な方法を選択する必要があります。

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

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