ホームページ >バックエンド開発 >PHPチュートリアル >PHP配列検索関数 in_array()、array_search()、array_key_exists()の使用例_PHPチュートリアル

PHP配列検索関数 in_array()、array_search()、array_key_exists()の使用例_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:31:371055ブラウズ

PHP には、指定された値が配列内に存在するかどうかを調べる方法がたくさんあります。昔、愚かにも foreach ループを使って調べたことを思い出します。ここでは、主に PHP の 3 つの組み込み配列関数の使用方法を共有します。指定された値が配列に存在するかどうかを確認するには、これらの 3 つの配列は in_array()、array_search()、array_key_exists() です。

まずはそれぞれの定義と機能をご紹介します

in_array(値,配列,型)

この関数の機能は、配列内の指定された値を検索することです。type はオプションのパラメーターです。このパラメーターが true に設定されている場合、検索されたデータの型と配列の値が同じかどうかを確認します。つまり、それらは互いに等しい。

例:


コードをコピー コードは次のとおりです:
$people = array("Peter", "Joe", "Glenn", "Cleveland");
if( in_array(" グレン",$people)){
echo "一致が見つかりました";
}else{
echo "一致が見つかりません";
}
?>

出力:

一致が見つかりました

array_key_exists(キー,配列)

この関数は、指定されたキーが配列に存在するかどうかを判断するもので、キーが存在する場合は true を返し、存在しない場合は false を返します。

例:


コードをコピーします コードは次のとおりです:
$a=array("a"=>"Dog","b"=>"Cat" );
if (array_key_exists("a",$a)){
echo "キーが存在します!";
}else{
echo "キーが存在しません!";
}
?>

出力:

キーは存在します!

array_search(値,配列,厳密)

array_search() 関数は in_array() と同じで、配列内のキー値を検索します。値が見つかった場合は、一致する要素に対応するキーが返されます。見つからない場合は false を返します。 PHP 4.2.0 より前では、関数は失敗時に false ではなく null を返していたことに注意してください。同様に、3 番目のパラメーター strict が true に指定されている場合、データ型と値が一貫している場合にのみ、対応する要素のキー名が返されます。

例:

コードをコピーします コードは次のとおりです:
$a=array("a"=>"Dog","b"=>"Cat","c "=> 5,"d"=>"5");
echo array_search("犬",$a);
echo array_search("5",$a);
?>

出力:

広告

実際の性能比較後、データ量が1000未満など大きくない場合は、どの検索方法でも性能のボトルネックにはなりません。ただし、データ量が比較的大きい場合は、array_key_exists を使用する方が適切です。テストによると、array_key_exist は in_array よりも 10 倍、さらには数十倍効率的です。

http://www.bkjia.com/PHPjc/762611.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/762611.html技術記事 PHP では、指定された値が配列に存在するかどうかを確認する方法がたくさんあります。昔、愚かにも foreach ループを使用して値を見つけたことを思い出します。ここでは主に 3 つの組み込みの PHP メソッドを紹介します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。