私は正常に動作する次の機能を持っています。
function ($objects, $items = array())
{
$result = array();
foreach ($objects as $object) {
$result[$object->id] = $object->first_name . ' ' . $object->last_name;
}
return $result;
}
ただし、配列を $items に渡し、それを分解して、first_name と last_name を手動で指定する必要がないようにしたいと考えています。
$item が (配列ではなく) 単一の値である場合は、次のように単純になります。
$result[$object->id] = $object->$item;
しかし、 $items に複数の値が含まれていて、それらをスペースで結合したい場合、これを機能させる方法がわかりません。次のようなものですが、そこに $object を取得する必要があります
$items = array('first_name', 'last_name');
$result[$object->id] = implode(' ', $items);