この記事では、PHP で多次元配列から特定のキー値配列を取得する方法を紹介します。ここでは、array_column() と array_map() を使用して、特定のキー値の配列を取得します。
#プロジェクト開発中、多次元配列で特定のキーと値を取得する必要がある場合があります。たとえば、多次元配列があり、各配列には ID、名前、電子メールなどのキーがあります。そして、配列からすべての名前を取得する必要があるだけですが、どうすれば取得できますか?
以下に完全な例を示します:
$names = array_column($myArray, 'name'); $emails = array_map(function ($ar) {return $ar['email'];}, $myArray);
コード例:
<?php $myArray = [ [ 'name' => 'Paresh', 'email' => 'paresh@gmail.com' ], [ 'name' => 'Rakesh', 'email' => 'rakesh@gmail.com' ], [ 'name' => 'Naresh', 'email' => 'naresh@gmail.com' ], ]; $names = array_column($myArray, 'name'); $emails = array_map(function ($ar) {return $ar['email'];}, $myArray); print_r($names); print_r($emails); ?>
指定されたキー値を出力する:
Array ( [0] => Paresh [1] => Rakesh [2] => Naresh ) Array ( [0] => paresh@gmail.com [1] => rakesh@gmail.com [2] => naresh@gmail.com )
関数の紹介:
1. array_column() 関数 指定されたキー値を返す配列内の値
array_column ( array $input , mixed $column_key [, mixed $index_key = null ] ) : array
array_column() の列: 入力配列内のキー値 column_key を持つ列を返します。オプションのパラメーターindex_key が指定されている場合は、この値入力配列内の列は、配列内の対応する値のキーとして返されます。
パラメータ入力、配列列の多次元配列を取り出す必要があります。オブジェクトのセットを含む配列が提供された場合、パブリック プロパティのみが直接取得されます。プライベート プロパティと保護されたプロパティも取得するには、クラスで __get() および __isset() マジック メソッドを実装する必要があります。
column_key、値を返す必要がある列。インデックス配列の列インデックス、連想配列の列のキー、または属性名にすることができます。 NULL にすることもできます。その場合、配列全体が返されます (配列キーをリセットするために、index_key パラメーターとともに使用すると非常に便利です)。
index_key は、返される配列のインデックス/キー列として、列の整数インデックスまたは文字列キー値を指定できます。
戻り値: 多次元配列から単一列の配列を返します。
2. array_map() 関数 配列の各要素にコールバック関数を適用します
array_map ( callable $callback , array $array1 [, array $... ] ) : array
array_map(): 配列を返します。 is array1 各要素にコールバック関数を適用した後の配列。コールバック関数のパラメータの数と array_map() に渡される配列の数は同じである必要があります。
パラメータ コールバック、コールバック関数は、各配列の各要素に適用されます。
array1、配列、コールバック関数を走査して実行します...配列リスト、それぞれを走査してコールバック関数を実行します。
戻り値: コールバック関数の処理後に、array1 のすべての要素を含む配列を返します。
関連おすすめ: 「PHP チュートリアル 」
この記事は、php で多次元配列から特定のキー値を取得する方法について説明しています。それを必要としている友達の役に立つでしょう。役に立ちました!
以上がPHP多次元配列から特定のキー値を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。