Я просто не понимаю, на самом деле это так просто, но я просто не могу этого сделать.У меня есть следующий массив:
Array (
[15] => Array (
[id] => 15
[name] => Name of course
[date] => 1300863780
[price] => 0 )
[14] => Array (
[id] => 14
[name] => Name of course
[date] => 1303545780
[price] => 0 )
)
И я просто хочу немного его переставить, чтобы он выглядел так:
Array (
[03] => Array (
[id] => Array(15)
[name] => Array(Name of course)
[day] => Array(23)
[year] => Array(2011)
[price] => Array(0) )
[04] => Array (
[id] => Array(14)
[name] => Array(Name of course)
[day] => Array(23)
[year] => Array(2011)
[price] => Array(0) )
)
Чтобы объяснить это: я хочу сделатьмесяц (рассчитывается от [дата]), чтобы быть основным ключом, а затем более или менее перечислить каждое поле в соответствующих полях / некоторые новые.Позже будет больше записей в том же месяце, поэтому имеет смысл упорядочить это так.
То, что я получил, пока следующее, и ради foo, я не понимаю, почему этоне работает таким образом (и я никак не могу придумать).$ this-> data - это массив выше!
<?php
foreach($this->data as $field)
{
while(list($id, $name, $date, $price) = each($field))
{
$month = date('m',$date);
$this->month[$month]['id'] = $id;
$this->month[$month]['name'] = $name;
$this->month[$month]['day'] = date('F',$date);
$this->month[$month]['year'] = date('Y',$date);
$this->month[$month]['price'] = $price;
}
}
?>
Все, что я получаю, - это кучи уведомлений о неопределенном смещении в строке с оператором list ().Очень ценю вашу помощь !!