PHP数组到一个对象数组

时间:2015-04-29 16:44:01

标签: php json

如何使用PHP将数组转换为对象数组?

输入

[1, 2, 3]

输出

[ {id:1}, {id:2}, {id:3} ]

2 个答案:

答案 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将包含数组中的每个对象