PHP では配列を使用するのが一般的ですが、配列は複数の値を格納できるデータ構造です。配列を使用する場合、配列内の値を取得するだけでなく、配列の添え字も取得できます。添え字は配列内の各要素のアドレスを指し、配列内の各要素の位置でもあります。
PHP には配列添字を取得する複数の方法が用意されており、そのうちの 3 つを以下に紹介します。
1. foreach ループの使用
foreach ループを使用して配列を走査する場合、各ループは配列内の要素を変数に割り当てます。この時点で、$key 変数を使用して、配列内の各要素の添字を取得できます。具体的なコードは次のとおりです。
$array = array('a' => 1, 'b' => 2, 'c' => 3); foreach ($array as $key => $value) { echo $key."<br>"; }
上記のコードは、配列要素 a、b、c の添字を出力します。
2. array_keys() 関数を使用する
array_keys() 関数は、配列の添え字を取得するために PHP が提供する関数です。この関数の構文は次のとおりです:
array_keys(array $array, $search_value, $strict);
このうち、$array は取得する添字の配列を示し、$search_value は検索する要素の値を示し、$strict は厳密な比較が有効かどうかを示します。 。 $search_value パラメーターが渡されない場合、配列のすべての添え字が返されます。
次のコードは、array_keys() 関数を使用して配列の添字を取得する方法を示しています。
$array = array('a' => 1, 'b' => 2, 'c' => 3); $keys = array_keys($array); foreach ($keys as $key) { echo $key."<br>"; }
上記のコードは、配列要素 a、b、c の添字を出力します。
3. array_map() 関数を使用する
array_map() 関数は、配列の添え字を取得するために PHP が提供する別の関数です。この関数の構文は次のとおりです:
array_map(callable $callback, array $array1, array ...$array2);
このうち、$callback は配列を処理するためのコールバック関数で、$array1 は処理対象の配列です。配列が 1 つだけの場合、$callback は 2 つのパラメーターを受け入れます。1 つは配列要素の値、もう 1 つは配列要素の添え字です。複数の配列がある場合、$callback は同じ数のパラメーターを受け入れます。各パラメーターは異なる配列の要素を表します。最後に、array_map() 関数は、処理された要素を含む配列を返します。
次のコードは、array_map() 関数を使用して配列の添字を取得する方法を示しています。
$array = array('a' => 1, 'b' => 2, 'c' => 3); $keys = array_map(function($value, $key) { return $key; }, $array, array_keys($array)); foreach ($keys as $key) { echo $key."<br>"; }
上記のコードは、配列要素 a、b、c の添字を出力します。
まとめ
PHP配列の添字を取得するには上記の3つの方法がありますが、どの方法を選択するかはコードの状況に応じて決定してください。どちらの方法を選択しても、配列の添字を簡単に取得できるため、PHP 配列の操作が容易になります。
以上がPHP配列から添字を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。