我正在使用FullCalendar jquery插件在我的网站上显示日历。我能够对我的日历上显示的任何值进行硬编码。格式应为:
echo json_encode(array(
array(
'id' => 1136,
'title' => "Understanding Health-Care Regulations (Part II) and COBRA Compliance Strategies",
'start' => "2011-11-17",
'url' => "/www/conferences/conference.php?ID=1136"
),
array(
'id' => 1154,
'title' => "Making the Most of your Membership",
'allDay' => false,
'start' => "Wed, 18 Nov 2011 11:00:00 EST",
'url' => "/www/conferences/conference.php?ID=1154"
),
array(
'id' => 1137,
'title' => "2011 Annual Human Resources Conference",
'start' => "2011-11-29",
'url' => "/www/conferences/conference.php?ID=1137"
),
));
当试图模仿这个数组结构时,我正在使用它:
$conferences = dbStoredProc('cp_meeting_get_list_new');
$events = array();
foreach ($conferences as $c){
$push = array(
'id' => $c['ID'],
'title' => $c['name'],
'start' => date("Y", $c['epochDate']) . "-" . date("M", $c['epochDate']) . "-" . date("d", $c['epochDate']),
'url' => '/events/details.php?id' . $c['ID'],
);
array_push($push, $events);
}
echo json_encode($events);
当我回复我的$events
变量时,我得到[]
。
有什么想法吗?
答案 0 :(得分:6)
array_push($push, $events);
应该是
array_push($events, $push);
或只是
$events[] = $push;
答案 1 :(得分:1)
最好只使用
将数据附加到数组中$events[] = $push;
它比查询参数顺序更快,更容易混淆。
答案 2 :(得分:1)
正如xdazz所说,你需要将参数切换为array_push
。或者,使用[]语法将项目推送到数组的末尾:
$events[] = $push;
此外,您可以将多个格式说明符传递给date
,因此您的起始行可以写为:
date("Y-M-d", $c['epochDate']),
答案 3 :(得分:0)
你的PHP存在缺陷。试试这个:
$conferences = dbStoredProc('cp_meeting_get_list_new'); $events = array(); foreach ($conferences as $c){ $events[] = array( 'id' => $c['ID'], 'title' => $c['name'], 'start' => date("Y-M-d", $c['epochDate']), 'url' => '/events/details.php?id' . $c['ID'] ); } echo json_encode($events);