Как объединить 4 массива в один

// get date this week

$W = date('W',strtotime(date('Y-m-d')));
$sunday = date(datetime::ISO8601, strtotime(date('Y') . "W" . $W . "0"));
$this_week = date('Y-m-d',strtotime($sunday));
echo $this_week;

//looping for get all date this week

for ($i=1; $i <= 6; $i++) {
$date=date_create("$this_week");
date_add($date,date_interval_create_from_date_string("$i days"));

$date_week[] = date_format($date,"Y-m-d"); //value array
$event[] = "dinner"; // value array
$start[] = "start"; // key array
$title[] = "title"; // key array

}

Я хочу изменить это в JSON, как это

        {
title: 'dinner',
start: '2015-08-24'
},
{
title: 'dinner',
start: '2015-08-25'
},
{
title: 'dinner',
start: '2015-08-26'
},
{
title: 'dinner',
start: '2015-08-27'
},
{
title: 'dinner',
start: '2015-08-28'
},
{
title: 'dinner',
start: '2015-08-29'
}

-1

Решение

я думаю это лучше хорошо … =
Это все еще в цикле.

$output[] = [
'tile' => 'Dinner',
'start' => $date_week
];

Это все еще в цикле.
затем в json_encode.

0

Другие решения

Вам не нужно объединять все эти массивы. Вы можете построить необходимую структуру данных в один простой цикл

$W = date('W',strtotime(date('Y-m-d')));
$sunday = date(datetime::ISO8601, strtotime(date('Y') . "W" . $W . "0"));
$this_week = date('Y-m-d',strtotime($sunday));


$result = array();

for ($i=1; $i <= 6; $i++) {
$date=date_create($this_week);
date_add($date,date_interval_create_from_date_string("$i days"));

$result[] = array('title' => 'dinner', 'start' => date_format($date,"Y-m-d"));
}

echo json_encode($result);

Результат

[
{"title":"dinner","start":"2016-11-21"},
{"title":"dinner","start":"2016-11-22"},
{"title":"dinner","start":"2016-11-23"},
{"title":"dinner","start":"2016-11-24"},
{"title":"dinner","start":"2016-12-25"},
{"title":"dinner","start":"2016-12-26"}
]
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector