- Home ›
- PHP関数のリファレンス ›
- 配列関数
array_search関数の使い方(特定の値が配列に含まれているか調べキーを返す)
PHP で用意されている組み込み関数の一つである array_search 関数の使い方です。 array_search 関数は配列の中に特定の値が含まれているかどうかを調べ、存在している場合はキーを返します。
(2022 年 09 月 28 日公開 / 2022 年 09 月 28 日更新)
array_search関数の書式と基本的な使い方
array_search 関数は次のように定義されています。
mixed array_search(mixed needle, array haystack [, bool strict])
引数に指定した値が配列に含まれているかどうかを調べます。デフォルト では同じ型かどうかまでは調べません。 引数: needle 調べたい値 haystack 対象となる配列 strict 型も同じかどうかまで調べる場合はTRUE 返り値: 見つかった場合はキーを返す。見つからなかった場合はFALSE。
配列の中に該当する項目が2つ以上ある場合は、最初に見つかった項目のキーを返します。
具体的な例で考えてみます。下記のような連想配列があるとします。
$array_fruit = array('apple'=>'赤','melon'=>'緑','banana'=>'黄');
上記に対して「array_search('緑', $array_fruit);」を実行すると、'melon'が帰ってきます。
サンプルコード
では実際に試してみます。
<html> <head><title>PHP TEST</title></head> <body> <?php $array_fruit = array('apple'=>'赤','melon'=>'緑','banana'=>'黄'); $search = '緑'; $key = array_search($search, $array_fruit); if ($key == FALSE){ print('配列の中に'.$search.'は見つかりません<br>'); }else{ print($search.'に対応するキーは'.$key.'です<br>'); } $search = '白'; $key = array_search($search, $array_fruit); if ($key == FALSE){ print('配列の中に'.$search.'は見つかりません<br>'); }else{ print($search.'に対応するキーは'.$key.'です<br>'); } ?> </body> </html>
上記のファイルを Web サーバに設置しブラウザ経由で見ると下記のように表示されます。
-- --
PHP で用意されている組み込み関数の一つである array_search 関数の使い方について解説しました。
( Written by Tatsuo Ikura )
Profile
著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。