如何将PHP变量的while循环作为JSON组件传递到JS脚本中



我正在尝试用事件填充JS日历(fullCalendar插件(。我有合适的PHP代码,用SQL:从数据库中提取信息

$item_results = $mysqli->query($sql_items);
$item_row = $item_results->fetch_assoc();

我将这个输出放入while循环中,以便将所有单独的结果重写为JSON格式:

$events = '';
while ( $item_row = $item_results->fetch_assoc() ) {
$events .= '{title: ''. $item_row['item'] . '', start: '' . $item_row['expiration_date'];
$events .= '', color: '' . $color . ''' . '}, ';
}

然而,当我在PHP代码下面的JS脚本标记中插入'<?php echo $events; ?>'时,它不会向日历输出任何内容。

var Calendar = new FullCalendar.Calendar(CalendarEl, {
events: [
// {
//   title: 'conference',
//   start: '2020-02-11'
// }
'<?php echo $events; ?>';
]});

重新开始并将PHP变量拆分为数组,这样我就可以使用json_encode()了吗?在这种情况下,我将如何处理其余的事件?

为什么不先使用数组,然后使用json_encode

$events = [];
while ( $item_row = $item_results->fetch_assoc() ) {
$events[] = ["title" => $item_row['item'], "start" => $item_row['expiration_date'], "color" => $color];
}
$events = json_encode($events,JSON_PRETTY_PRINT);

相关内容

  • 没有找到相关文章

最新更新