嗨,我試圖找出如何使用PHP和MySQL創建一個非常特定格式的JSON對象JSON對象:創建一個從MySQL數據庫
我的MySQL表看起來像這樣(不是最漂亮的,我知道) :
CREATE TABLE IF NOT EXISTS `room120` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`timestamp_start` datetime NOT NULL,
`timestamp_end` datetime NOT NULL,
`month` int(2) NOT NULL,
`day` int(2) NOT NULL,
`year` int(4) NOT NULL,
`name` text NOT NULL,
`email` text NOT NULL,
`phone` text NOT NULL,
`title` text NOT NULL,
`start` varchar(5) NOT NULL,
`end` varchar(5) NOT NULL,
`approved` enum('true','false','new') NOT NULL DEFAULT 'new',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
我怎麼需要我的JSON對象看:
[
"10-23-2013": {
0: {
id : 1,
title : "Hello World",
time : "8:00 am - 10:00 am"
},
1: {
id : 2,
title : "Hello Universe",
time : "1:00 pm - 3:00 pm"
}
}
]
我有我的cuurent PHP循環,構建ID和標題的一部分,但我有一個問題,構建有日期的一部分。
這裏是我的PHP環路(是的,我知道有建設日期部分,我想弄明白沒有符號):
$return_arr = array();
while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
$date = str_pad($row[month], 2, "0", STR_PAD_LEFT).'-'.str_pad($row[day], 2, "0", STR_PAD_LEFT).'-'.$row[year];
$start_time = DATE("g:i a", STRTOTIME($row[start]));
$end_time = DATE("g:i a", STRTOTIME($row[end]));
$row_array[id] = $row[id];
$row_array[title] = $row[title];
array_push($return_arr, $row_array);
}
echo json_encode(array("event" => $return_arr));
目前,它返回是這樣的:
Object {event: Array[15]}
event: Array[15]
0: Object
id: "1"
title: "Hello World"
1)在數組鍵上加上引號 – Jeroen
2)$ row_array ['time'] = $ start_time。 ' - '。 $ end_time – Jeroen
3)數據如何存儲在開始/結束?示例值? – Jeroen