PHPでは、配列は非常に重要なデータ構造です。インデックスアレイに加えて、連想配列も一般的に使用されるタイプです。連想配列では、キーは文字列または整数であり、値はあらゆるタイプの変数になります。多くの場合、キー名ではなく、配列内の値のみを気にすることがあります。この時点で、 array_values()関数が役立つ場合があります。
この記事では、array_values()関数を使用して連想配列からすべての値を抽出し、キー名を無視する方法を詳細に説明します。
array_values()は、配列内のすべての値を返すPHPビルトイン配列関数です。新しいインデックスアレイとしてそれらを返します。この関数は、元の配列のキー名を保持するものではありませんが、インデックス付きアレイを形成するためにそれを改善します。
array_values(array $array): array
$ array :連想配列が入力されました。
返品値: $ arrayのすべての値を含む新しい配列、およびキー名は数に再インネックスされます。
次のように、連想配列があるとします。
$person = [
"name" => "John",
"age" => 30,
"city" => "New York"
];
配列内の値のみを気にする場合は、 array_values()を使用してこれらの値を抽出し、新しい配列を返すことができます。
$values = array_values($person);
print_r($values);
Array
(
[0] => John
[1] => 30
[2] => New York
)
上記のように、 array_values()は、元の配列内のすべての値を含む新しいアレイを返し、キー名は数として再インネックスされます。
時には、連想配列を扱っている場合、値だけを気にし、元のキー名を必要としません。 array_values()を使用することにより、これらのキー名を簡単に無視し、値のみを取得できます。
たとえば、特定のユーザー向けのログイン情報を保存する配列があるとし、ユーザー名リストを抽出するだけで、以下を抽出したいとします。
$user_logins = [
"user1" => "john_doe",
"user2" => "jane_smith",
"user3" => "alice_walker"
];
$usernames = array_values($user_logins);
print_r($usernames);
Array
(
[0] => john_doe
[1] => jane_smith
[2] => alice_walker
)
この例では、 array_values()を使用してすべてのユーザー名を抽出し、元の配列のキー名を無視します。
簡素化された処理:キー名ではなく配列内の値のみを気にする場合、 array_values()を使用するとコードを簡素化できます。
データ抽出:特にデータを抽出する場合、透明なインデックス配列が必要な場合、 array_values()は、キー名の干渉を避けるために配列を再インドするのに役立ちます。
データの一貫性:すべてのキー名を数値インデックスに変換することにより、生成されたデータ構造がより一貫性があり、他の機能に渡すか、フォーム、JSON応答などの生成に適しています。
PHPのarray_values()関数は、連想配列から値を抽出し、キー名を無視するのに役立つシンプルで効率的な方法を提供します。この関数は、データの処理であろうと特定の操作の実行であろうと、非常に便利なツールです。
キー名を含む配列で作業しているが、その値のみを気にする場合、 array_values()は間違いなく非常に実用的な機能です。