【PHP・配列関数】配列に値やインデックスが存在するか調べる
【PHP】 IN_ARRAY(配列に値が存在するか調べる)

php4~ で使用できます。
IN_ARRAY : 書式
書式:
in_array ( ①, ② [,③] )
TRUE:値が存在する FALSE:値が存在しない
in_array ( ①, ② [,③] )
引数:
①検索する値 ②配列 ③データ型も調べるときはTRUE、省略時FALSE
TRUE:値が存在する FALSE:値が存在しない
in_array関数は、配列に値が存在するか調べるときに使います。

大文字と小文字は区別されることに注意しましょう。
IN_ARRAY : 使用例
- 配列に値が存在するか調べる $array = array("東京","愛知","大阪");
if(in_array("愛知", $array)){
echo "値は存在します"; →出力される
}$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("mac", $os)) {
echo "Got mac"; →出力されない(大文字と小文字が区別される)
}
- 配列にデータ型を含めて一致する値が存在するか調べる$array = array("1","2","3");
if(in_array(2, $array, TRUE)){
echo "値は存在します";
}else{
echo "値は存在しません"; →出力される
}<解説>
第3引数に「TRUE」を指定するとデータ型を含めて一致するかどうかを調べます。この例では、文字列と数値を比較しているので、一致しないことを示す「FALSE」が返されます。
【PHP】 ARRAY_SEARCH関数(配列から指定値を検索する)

php4.0.5~ で使用できます。
ARRAY_SEARCH関数 : 書式
書式:
array_search ( ①, ② [,③] )
array_search ( ①, ② [,③] )
引数:
①検索する値 ②配列 ③データ型の一致も要するときはTRUE、省略時FALSE
戻り値:
見つかった場合:インデックス
見つからなかった場合:FALSE(PHP4.2.0以前はNULL)
array_search関数は、配列から指定値を検索して、見つかった場合はインデックスを返します。第3引数で、厳密な型の一致も含めた検索をするかを指定できます。
ARRAY_SEARCH関数 : 使用例
- 配列から指定値を検索する$array = array("a", "b", "c");
if(array_search("b", $array)){
echo "値は存在します"; → 出力される
} - 配列から型が一致する指定値を検索する$array = array(1, "2", "3");
if(array_search(2, $array, TRUE)){
echo "値は存在します";
}else{
echo "値は存在しません"; → 出力される
} - インデックスの値を取得する$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
echo array_search('green', $array); →「2」を出力
echo array_search('red', $array); →「1」を出力
関連リンク

【PHP】配列を作成する・配列の値を取得する・配列の数を数える
array/array_combine関数(配列を作成する)array_values関数(配列の値を取得する)/array_count_values関数(配列の数を数える)について、使用例とともにわかりやすく説明しています。
PHPトップページ

PHP入門 & 関数リファレンス
PHPの初心者からベテランまで活用できるページです。初めての方はもちろん、もう一度基礎から学びなおしたい方は、基礎知識のページを順に読んで理解しましょう。ベテランの方向けには、関数の書式・パラメーターを調べられる構成になっています。PHPプログラム作成時にご活用下さい。