2015-04-29 3 views

ответ

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 будет содержит каждый объект в массиве

2

Когда вам нужно переформатировать массив, например. transorm значения массива в другой формат (номер объекта с id-> номер) и они отображают 1: 1 (новый массив имеет такое же количество элементов, как оригинал), array_map является решением

$newArray = array_map(function($item) { 
    $object = new \StdClass; 
    $object->id = $item; 
    return $object; 
}, $array); 
+0

У меня недостаточно отзывов, чтобы проголосовать за вас, но спасибо. – tommy123

Смежные вопросы