現在の位置: ホーム> 最新記事一覧> PHP関数「array_search」を使用して、配列内の指定された値を見つけ、そのキー名を返します

PHP関数「array_search」を使用して、配列内の指定された値を見つけ、そのキー名を返します

M66 2025-06-05

PHPにおけるarray_search関数の役割

PHP開発では、アレイは非常に頻繁に使用されるデータ構造です。 Arrayの値に対応するキー名を見つけるには、組み込みで効率的なツール関数であるarray_search()関数を使用できます。

array_search()の基本的な構文

mixed array_search( mixed $needle , array $haystack [, bool $strict = false ] )

この関数は、3つのパラメーターを受け取ります。

  • $針:見つける価値。
  • $ haystack :検索する配列。
  • $ strict :オプションのパラメーター、厳密な比較を有効にするかどうか(デフォルトのfalse)。 trueに設定すると、タイプと値は正確に一致する必要があります。

基本的な使用例

array_search()を使用して文字列値を見つける例を次に示します。

 $fruits = array("banana", "apple", "orange", "grape");
<p>$key = array_search("apple", $fruits);</p>
<p>echo "The key for 'apple' is: " . $key;

出力の結果は次のとおりです。

 The key for 'apple' is: 1

この例では、フルーツアレイを作成し、 array_search()を使用して「Apple」が配置されているキー名を見つけ、結果はインデックス値1を返します。

厳密なモードで使用します

値だけでなくタイプも比較したい場合は、3番目のパラメーター$ stricttrueに設定できます。次の例を見てみましょう。

 $fruits = array("banana", 1, "2", true);
<p>$key = array_search(1, $fruits, true);<br>
echo "The key for 1 is: " . $key . "\n";</p>
<p>$key = array_search("1", $fruits, true);<br>
echo "The key for '1' is: " . $key;

出力の結果は次のとおりです。

 The key for 1 is: 1
The key for '1' is:

使用されている厳格なパターンにより、 1 (整数)と「1」 (文字列)は不均等と見なされるため、2番目のルックアップはfalseを返します(キー名は一致していません)。

array_searchに関するメモ

  • Arrayに複数の一致値がある場合、 array_search()は最初の一致のキー名のみを返します。
  • 返される結果は、整数インデックスまたは連想配列の文字列キーである場合があります。
  • 一致が見つからないと、関数はfalseを返します。

結論

一般に、 array_search()は、PHPの非常に実用的な配列処理機能です。アレイ内の値の位置を見つけてキー名を取得する必要があるシナリオに適しています。シーケンシャル配列であろうと連想配列であろうと、ターゲット要素をすばやく見つけてコード効率を向上させることができます。