PHP 配列でインデックス位置を返す方法
PHPにおけるarray_search()関数は、配列内の要素のインデックス位置を返します。この関数は2つのパラメータを受け取ります。1つ目は検索する要素で、2つ目は検索する配列です。要素が見つかった場合、対応するインデックス位置が返され、見つからない場合はfalseが返されます。
以下に例を示します。
$fruits = array("apple", "banana", "orange", "pear");
$index = array_search("banana", $fruits);
echo $index; // 输出 1
上記の例では、果物が入った配列 $fruits を定義し、array_search() 関数を使用し「banana」要素のインデックス位置を検索し、結果を $index 変数に格納します。最後に、echo ステートメントを使用して $index 変数(インデックス位置1)の値を出力します。
同じ値をもつ要素のインデックス位置をすべて返したい場合は、array_keys() 関数を使用できます。この関数は引数 2 つを受信し、最初の引数は検索する値、2 番目の引数は検索対象の配列です。すると、対象の値を持つすべてのキーを含む配列が返されます。
これは一例です。
$fruits = array("apple", "banana", "orange", "banana");
$indexes = array_keys($fruits, "banana");
print_r($indexes); // 输出 Array ( [0] => 1 [1] => 3 )
上の例では、フルーツが入っている配列 $fruits を定義しています。その中に “banana” 要素が 2 つあります。array_keys() 関数を使用して、すべての “banana” 要素のインデックス位置を調べて結果を変数 $indexes に格納します。最後に、print_r() 関数を使用して変数 $indexes の値を出力します。インデックス位置は 1 と 3 です。