array_column
という関数を使って、配列やオブジェクトから指定した列(カラム)の値を取得することができます。
オブジェクトからも取り出せるのは非常に便利だなと思いました。
以下のような連想配列があったとします。
$ARRAY = [
[
"id" => 1,
"name" => "aiko"
],
[
"id" => 2,
"name" => "beta"
],
[
"id" => 3,
"name" => "clare"
]
];
array_column
関数を使ってname
列だけを取り出してみます。
$NAME = array_column($ARRAY, "name");
print_r($NAME);
出力結果はこのようになります。
Array
(
[0] => aiko
[1] => beta
[2] => clare
)
オブジェクトの場合
class User
{
public $username;
public function __construct(string $username)
{
$this->username = $username;
}
}
$users = [
new User("user 1"),
new User("user 2"),
new User("user 3"),
];
$USER = array_column($users, "username");
print_r($USER);
出力結果
Array
(
[0] => user 1
[1] => user 2
[2] => user 3
)
公式リファレンス:
PHP: array_column – Manual