是否有更“实用”的方法来执行此操作?是的,我知道它是PHP,并且我正试图将一个方形钉插入圆孔中。即使它不是功能性语言,我也希望更加注重功能性。
$c = [];
foreach ($classes as $cl) {
$c[$cl->Id] = $cl->Name;
}
答案 0 :(得分:5)
您正在做的是array_column。
Array_column可以隔离数组中的列,并使用第三个参数设置键名称。
$c= array_column($classes, 'Name', 'Id');
答案 1 :(得分:1)
我会使用此功能:
$c = array_column($classes, 'Name', 'Id');
答案 2 :(得分:0)
“功能性”方式将如下所示:
$result = array_reduce(
$classes,
function ($t, $cl) {
$t[$cl->Id] = $cl->Name;
return $t;
},
[]
);