如何使用PHP将数组转换为对象数组?
输入
[1, 2, 3]
输出
[ {id:1}, {id:2}, {id:3} ]
答案 0 :(得分:2)
当您必须重新格式化数组时,例如将数组的值转换为另一种格式(带有id->数字的对象的数字)并且它们映射1:1(新数组具有与原始数据相同的元素数量),array_map是解决方案
$newArray = array_map(function($item) {
$object = new \StdClass;
$object->id = $item;
return $object;
}, $array);
答案 1 :(得分:1)
如果您之前定义过您的对象,我想我会做一个循环
class previouslyDefinedObject{
public $id;
}
$myArray = array(1,2,3);
$newArray = array();
foreach($myArray as $id){
$obj = new previouslyDefinedObject();
$obj->id = $id;
array_push($newArray, $obj);
}
print_r($newArray);
这样,$ newArray将包含数组中的每个对象