ホームページ > バックエンド開発 > PHPの問題 > PHPで配列内にあるかどうかを確認する方法

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

PHPz
リリース: 2023-04-23 09:35:51
オリジナル
870 人が閲覧しました

要素が配列内にあるかどうかを判断することは、PHP では非常に一般的な操作です。配列は非常に重要なデータ構造であり、PHP での配列操作の使用は非常に簡単であるため、多くの開発者は PHP プログラムを作成するときに配列を使用してデータを保存および処理します。要素が配列内にあるかどうかを判断することもよく使用される操作ですが、PHP では要素が配列内にあるかどうかをどのように判断すればよいでしょうか? PHPで配列にあるかどうかを判断する方法を詳しく紹介します。

1. in_array() 関数を使用する

in_array() 関数は、要素が配列内にあるかどうかを判断するために使用される PHP の関数です。構文形式は次のとおりです。

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

この関数では、$needle は必要な要素を表します。 $ haystack は判定が必要な配列を表し、$strict は厳密な型判定が必要かどうかを指定するために使用されます。関数の戻り値はブール型で、$needle が配列 $haystack に存在するかどうかを示します。

次は、要素が配列内にあるかどうかを判断する in_array() 関数の使用例です。

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

echo "存在";
ログイン後にコピー
ログイン後にコピー

} else {

echo "不存在";
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

}

この例では、$ を定義しますフルーツ配列を取得し、 in_array() 関数を使用して、「バナナ」要素が配列 $fruits に存在するかどうかを確認します。 「バナナ」は $fruits 配列の要素であるため、プログラムは「exists」を出力します。

2. array_search() 関数を使用する

array_search() 関数は、配列内の要素を検索するために使用される PHP の関数です。構文形式は次のとおりです。

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

この関数では、$needle は検索する要素を表します。 , $ haystack は検索が必要な配列を表し、$strict は厳密な型判定が必要かどうかを指定するために使用されます。関数の戻り値は配列内の要素 (つまり、配列の添字) のキー名であり、要素が見つからない場合は false が返されます。

次は、array_search() 関数を使用して、要素が配列内にあるかどうかを判断する例です。

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

echo "存在,索引为:".$key;
ログイン後にコピー

} else {

echo "不存在";
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

}

この例では、array_search() 関数を使用して $fruits 配列内の「バナナ」要素の位置を検索し、その戻り値を変数 $key に割り当てます。 $key が false でない場合は、配列内に「バナナ」要素が存在し、そのインデックスが出力されることを意味します。それ以外の場合は、「バナナ」要素が配列内に存在しないことを意味し、プログラムは「存在しません」と出力します。

3. in_array() 関数と array_keys() 関数を使用する

in_array() 関数と array_search() 関数を使用して要素が配列内にあるかどうかを判断することに加えて、次のこともできます。 ()関数とarray_keys()関数を組み合わせてin_arrayを使用して判断します。 array_keys() 関数は、配列内のすべてのキー名 (つまり、配列の添字) を取得するために使用される PHP の関数です。構文形式は次のとおりです。

array array_keys (array $array [,mixed $search_value = null [, bool $strict = false ]])

この関数では、$array はキー名の配列。$search_value は指定された要素を検索する必要があるかどうかを指定するために使用され、$strict は厳密な型判定が必要かどうかを指定するために使用されます。この関数は、配列の要素の順序で配列された配列のすべてのキーを含む配列を返します。

次は、in_array() 関数と array_keys() 関数を使用して、要素が配列内にあるかどうかを判断する例です。

$fruits = array("apple", "banana) ", " オレンジ");
$keys = array_keys($fruits, "バナナ");
if (in_array("バナナ", $fruits)) {

echo "存在,索引为:".$keys[0];
ログイン後にコピー

} else {

echo "不存在";
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

}

この例では、まず array_keys() 関数を使用して、$fruits 配列内の値「banana」を持つすべてのキー名を取得し、戻り値を変数 $keys。次に、 in_array() 関数を使用して、「バナナ」要素が配列内に存在するかどうかを確認します。存在する場合は、そのインデックス値 $keys[0] を出力します ($keys は配列であるため、$keys[ を使用する必要があることに注意してください) 0] を使用して最初の要素の値を取得します)。存在しない場合は「存在しません」と出力します。

4. foreach ループの使用

上記の関数の使用に加えて、foreach ループを使用して要素が配列内にあるかどうかを判断することもできます。このメソッドは、通常のインデックス付き配列だけでなく、あらゆる種類の配列に適用できます。

次は、要素が配列内にあるかどうかを判断するために foreach ループを使用する例です。

$fruits = array("apple", "banana", "orange");
$exist = false;
foreach ($fruits as $fruit) {

if ($fruit == "banana") {
    $exist = true;
    break;
}
ログイン後にコピー

}
if ($exist) {

echo "存在";
ログイン後にコピー
ログイン後にコピー

} else {

echo "不存在";
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

}

この例では、foreach ループを使用して $fruits 配列を走査し、毎回現在の要素 $fruit が「banana」に等しいかどうかを判断します。そうである場合は、$exist 変数を true に設定してループを抜け出し、それ以外の場合はループを継続します。最後に、$exist の値に基づいて、「バナナ」要素が配列内に存在するかどうかを判断します。

この記事では、要素が配列内にあるかどうかを判断するための PHP の 4 つのメソッド (in_array() 関数、array_search() 関数、in_array() 関数、array_keys() 関数、および foreach の使用を含む) を紹介します。ループ。実際のプログラミングでは、特定のニーズに基づいて要素が配列内にあるかどうかを判断するための最適な方法を選択する必要があり、エラーを避けるために型判定の問題に注意を払う必要があります。

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

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