2021年2月12日

 PHP

【PHP】【array】in_array 配列に特定の値が含まれているか検索

in_array

in_array

in_arrayの概要

【PHP】【array】in_array 配列に特定の値が含まれているか検索

in_arrayは、配列に特定の値が含まれているかどうかを検索する時に使用する関数です。

in_arrayの構文

in_array ( mixed $needle , array $haystack , bool $strict = false );

in_arrayの引数と返り値

構文の引数と返り値はこのようになります。

引数needle検索したい値
haystack配列
strict型を含めて検証
返り値Boolean含まれている時 true を返します
含まれていないとき false を返します

in_arrayの使い方

in_arrayは配列の中に、$needleで指定した値が含まれているかを検証します。
例えば、配列 $country の中に ‘japan’ という値が含まれているかを調べたときは、このように記述します。

$country = array('japan', 'america', 'china', 'korea');

$answer1 = in_array( 'japan', $country, true);
$answer2 = in_array( 'mexico', $country, true);

print $answer1 // true 含まれている
print $answer2 // false 含まれていない

in_arrayの第三引数

あいまいな検証結果を防ぎたいときは第三引数に、trueを指定します。trueを指定することで型も検証します。例えば文字列であるstring型の’1’と、数値であるInt型の1を異なるものとして扱う場合はtrueを指定します。

in_arrayはどのような時に使用できる?

電車の停車する駅名が配列に格納されているとしましょう。例えば東急東横線の通勤特急と、準急が「田園麻布」駅で止まるかどうかを検証したいときなどに使用する事ができます。その場合はこのように記述する事ができます。

$通勤特急 = array(停車駅名が格納されています);
$bool = in_array('田園麻布', $通勤特急, true);
// 通勤特急は、田園麻布に停車しないのでfalseが返り値となります。
print $bool; // false

$準急 = array(停車駅名が格納されています);
$bool = in_array('田園麻布', $準急, true);
// 準急は、田園麻布に停車するのでtrueが返り値となります。
print $bool; // true
NOTICE
このページは2021年2月12日に作成されています。閲覧時期によっては情報が古い可能性があります。免責事項をご確認ください。

関連記事

このページのTopへ