ホームページ >バックエンド開発 >PHPチュートリアル >PHP 関数ライブラリの array_search() 関数の使用方法の概要

PHP 関数ライブラリの array_search() 関数の使用方法の概要

王林
王林オリジナル
2023-06-27 11:26:493095ブラウズ

PHP は、Web 開発で広く使用されている強力な Web プログラミング言語です。 PHP 開発プロセスでは、多くの場合、配列に対していくつかの操作を実行する必要があります。その中でも、array_search() 関数は非常によく使われる関数で、配列から指定した値を検索し、配列内のそのキーを返すことができます。この記事ではarray_search()関数の基本的な使い方と注意点を紹介します。

1. array_search() 関数の基本的な使い方

array_search() 関数の構文は次のとおりです:

array_search($needle, $haystack, $strict)

このうち、$needle は取得する値を表します。 $haystack は検索する配列を表し、$strict は厳密な比較を使用するかどうかを示します (オプションのパラメーター、デフォルトは false)。

たとえば、次のコードは、array_search() 関数を使用して配列内の要素を検索する方法を示しています。

$arr = array('red', 'green', 'blue', 'yellow');
$key = array_search('green', $arr);
echo $key;

上記のコードでは、$arr は 4 つの要素、array_search を含む配列です。 ( ) 関数は、配列内の要素「green」のキーを見つけるために使用されます。 「green」のキーは1なので、出力結果は1となります。

検索対象の値が配列内に存在しない場合、array_search() 関数は false を返します。たとえば、次のコードは存在しない値を検索します。

$arr = array('red', 'green', 'blue', 'yellow');
$key = array_search('black', $arr);
var_dump($key);

上記のコードでは、$arr は 4 つの要素を含む配列であり、存在しない値を検索するために array_search() 関数が使用されます。 'black' 配列内の要素のキー。見つからないため、出力結果は false になります。

2. array_search() 関数に関する注意事項

array_search() 関数を使用する場合は、次の点に注意する必要があります。最初に見つかった要素のキーのみを返します。配列内に同一の値が複数ある場合は、最初に一致した要素のキーのみを返します。

    array_search() 関数は、緩い比較を使用して、要素を検索対象の値と比較します。これは、比較のために要素をある型から別の型に変換することを意味します。厳密な比較を使用する場合は、$strict パラメーターを true に設定する必要があります。
  1. たとえば、次のコードは、疎比較と厳密比較を使用した場合の要素検索 array_search() 関数の結果の違いを示しています。
  2. $arr = array('1', '2', '3', 4, 5);
    $key1 = array_search(1, $arr);
    $key2 = array_search('1', $arr);
    $key3 = array_search(4, $arr);
    $key4 = array_search('4', $arr);
    $key5 = array_search(4, $arr, true);
    var_dump($key1, $key2, $key3, $key4, $key5);
上記のコードでは、$ arr は 5 つの要素を含む配列です。array_search() 関数は、配列内の数値または文字列「1」と「4」のキーを見つけるために使用されます。 $key1 と $key2 はそれぞれ緩い比較と厳密な比較を使用し、$key3 と $key4 はそれぞれ緩い比較と厳密な比較を使用します。 $key5 は厳密な比較を使用します。出力結果は次のとおりです。

int(0)
int(0)
int(3)
int(3)
bool(false)

ご覧のとおり、$key1 と $key2 の結果は両方とも 0 です。これは、array_search() 関数が「1」を数値 1 に変換して比較するためです。その結果、配列内の最初の要素が見つかります。 $key3 と $key4 の結果は両方とも 3 です。これは、array_search() 関数が疎比較中に整数 4 を文字列 '4' に変換して比較を実行し、結果として配列内で最初に一致する要素が見つかるためです。 $key5 の結果は false です。これは、厳密な比較が使用されており、配列内の要素 4 が文字列ではなく整数であるため、一致する要素が見つからないためです。

array_search() 関数は、配列のインデックス付けにのみ使用できます。連想配列内の値を見つけたい場合は、array_keys() 関数を使用して連想配列内の指定された値のキーを取得するか、foreach() を使用して配列をループしてキーを見つける必要があります。

  1. 3. 概要
array_search() 関数は、非常に一般的に使用される配列検索関数であり、インデックス配列内の指定された値を検索し、それを配列に返すために使用できます。 。 鍵。 array_search() 関数を使用する場合は、パラメータの使用法と配列型の制限に注意する必要があります。 array_search() 関数を正しく使用すると、PHP での配列操作がより効率的かつ便利になります。

以上がPHP 関数ライブラリの array_search() 関数の使用方法の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。