PHP では、値が配列に属しているかどうかのクエリは非常に基本的な操作です。この記事では、値が配列に属しているかどうかを判断する 3 つの異なる方法を紹介します。
最初の方法: in_array() 関数を使用する
PHP には、値が配列に属しているかどうかを判断するために使用できる in_array() 関数が用意されています。この関数には 2 つのパラメータがあります。最初のパラメータはクエリされる値で、2 番目のパラメータはクエリされる配列です。この関数は、最初の引数が 2 番目の引数に属する場合は true を返し、そうでない場合は false を返します。
次は例です:
<?php $fruits = array('apple', 'banana', 'orange'); if (in_array('apple', $fruits)) { echo 'apple belongs to fruits array'; } else { echo 'apple does not belong to fruits array'; } ?>
上記のコードは出力します: apple は果物に属します array
2 番目の方法: array_search() 関数を使用します
PHP には、値が配列に属しているかどうかをクエリするために使用できる別の関数 array_search() も提供されており、この関数は配列内の値の位置を返すこともできます。クエリが成功した場合、この関数は配列内の値のキー名を返し、それ以外の場合は false を返します。
以下は例です:
<?php $fruits = array('apple', 'banana', 'orange'); $search = array_search('apple', $fruits); if ($search !== false) { echo 'apple belongs to fruits array, and its key is ' . $search; } else { echo 'apple does not belong to fruits array'; } ?>
上記のコードは出力します: apple はフルーツ配列に属し、そのキーは 0です。
false が見つかった場合は注意してください。配列 0 または '' も false を返すため、恒等演算子 (===) を使用して false を返すか 0 を返すかを区別する必要があります。
3 番目の方法: isset() 関数を使用する
isset() 関数は、変数が存在するかどうか、および変数に値が設定されているかどうかを判断するために使用されます。配列では、特定のキーが特定の値に設定されているかどうかは、多くの場合、クエリが必要かどうかによって決まります。したがって、 isset() 関数を使用して、値が配列に属しているかどうかを判断することもできます。 isset() 関数は、変数が特定の値に設定されている場合は true を返し、それ以外の場合は false を返します。
次は例です:
<?php $fruits = array('apple', 'banana', 'orange'); if (isset($fruits[array_search('apple', $fruits)])) { echo 'apple belongs to fruits array'; } else { echo 'apple does not belong to fruits array'; } ?>
上記のコードは出力します: apple は果物の配列に属します
この例では array_search() 関数が使用されていることに注意してください。 , 特定の予期せぬエラーが発生しないように結果を判断しました。
以上がPHPで値が配列に属しているかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。