2014-08-08 3 views
0

До сих пор мой var_dump() из A $ записей массива выглядит следующим образом:Изменить для каждого значения

array (size=1) 
    25 => 
    array (size=1) 
     0 => 
     object(stdClass)[51] 
      public 'id' => 25 
      public 'name' => info... 
      public 'surname' => info... 

Я wan't изменить это имя 0 индекса идентификатора объекта (25) имени, но это только добавляет один более размернее моего текущего. Вот как я это делаю:

foreach ($records as $value) { 
    $records = array($value->id=>$records); 
} 

Я хочу, чтобы мой массив, чтобы выглядеть как это, хотя:

array (size=1) 
    25 => 
    object(stdClass)[51] 
    public 'id' => 25 
    public 'name' => info... 
    public 'surname' => info... 

ответ

1

ключи Обновление так что они равны ID:

$tmp= array(); 
foreach ($records as $value) { 
    $tmp[$value->id] = $value; 
} 
$records = $tmp; 
+0

хмм, может быть, я не был» достаточно ясно или я не понимаю. Я хочу переименовать исходный индекс моего массива $ records [0] в $ records [$ value-> id] и сделать это в моем цикле, поэтому, если у меня будет больше индексов, все они будут переименованы после их id – LazyPeon

+0

. обновил мой код. В основном вы создаете новый массив и просто устанавливаете ключ, используя метод, который я показал. –

+0

Я вижу, что это работает, однако теперь у меня есть новая переменная массива, называемая $ results ... Любая вероятность, что я могу сохранить прежнее имя? В зависимости от этого много кода – LazyPeon

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