指定した値が配列にあるかどうかを確認 - in_array()
当ページのリンクには広告が含まれています。
Webプログラミング言語PHPで、指定した値が配列にあるかをチェックする関数in_arrayを紹介します。
in_array関数
bool in_array ( mixed $needle , array $haystack [, bool $strict = false ] )
指定した値が配列にあるかをチェックします。
引数 $needle チェックする値を指定します。大文字と小文字は区別されます。 $haystack 値をチェックする配列を指定します。 $strict trueを指定した場合、配列の値とチェックする値の型が一致するかまで比較します。
返り値 返り値がbool型なので、チェックする値が見つかった場合は trueを、 その他の場合はfalseを返します。
サンプルコード①
配列からチェックする値(ここでは、入門)を検索するサンプルコードです。
in_array( チェックする値, 配列 )
<?php echo "# 指定した文字列(入門)が配列にあるかをチェック\n"; $a = array("PHP", "コメント", "入門", "バージョン"); print_r($a); var_dump(in_array("入門", $a)); ?>
実行結果です。
# 指定した文字列(入門)が配列にあるかをチェック Array ( [0] => PHP [1] => コメント [2] => 入門 [3] => バージョン ) bool(true)
配列に指定した値(入門)があるので、trueを返しています。
サンプルコード②
次は指定した値が配列にある/なしで、条件分岐してみましょう。
in_array( チェックする値, 配列 )
<?php echo "# 指定した文字列が配列にある/なしで分岐\n"; $b = array("PHP", "コメント", "入門", "バージョン"); print_r($b); if(in_array("入門", $b)) { echo "ある\n"; } else { echo "ない\n"; } if(in_array("基礎", $b)) { echo "ある\n"; } else { echo "ない\n"; } ?>
実行結果です。
# 指定した文字列が配列にある/なしで分岐 Array ( [0] => PHP [1] => コメント [2] => 入門 [3] => バージョン ) ある ない
指定した文字列がある場合は「ある」を表示、ない場合は「ない」を表示しています。