我正在尝试使用从数据库中选择的信息创建一个JSON数组,但我不能给该数组命名。
while($row = mysql_fetch_array($result))
{
$arr = array('isim' => $row['ename'], 'yer' => $row['eplace'], 'top' => $row['society'], 'tar' => $row['edate'], 'saat' => $row['ehour']);
echo json_encode($arr);
}
我想看到结果;
{ “事件”:[{ “ISIM”: “EERE”, “揭掉”: “DDDD”, “顶”: “asdfsdffgdfgdfg”, “焦油”: “2013年10月18日”, “SAAT”: “12点46分”} { “ISIM”: “fhjfr”, “揭掉”: “yhjrhj”, “顶”: “ryjryjrj”, “焦油”: “二○一三年十月三十零日”, “SAAT”:“12: 45 “} {” ISIM “:” sfsgsg”, “揭掉”: “sfgssfg”, “顶”: “sgsfgsg”, “焦油”: “2013年10月31日”, “SAAT”: “12:45”} ]}
但我看不到
{ “事件”:[
在开始和
]}
最后。
谢谢。
答案 0 :(得分:1)
要生成有效的JSON,首先需要将所有内容添加到多维数组中,然后只有在完成后才对其进行编码:
$arr = array();
while($row = mysql_fetch_array($result))
{
$arr[] = array('isim' => $row['ename'], 'yer' => $row['eplace'], 'top' => $row['society'], 'tar' => $row['edate'], 'saat' => $row['ehour']);
// or perhaps just: $arr[] = $row;
}
echo json_encode($arr);
另请注意,mysql_*
函数已弃用。
要将所有内容放在events
键下,您需要以下内容:
$arr['events'][] = array('isim' => $row['ename'], 'yer' => $row['eplace'], 'top' => $row['society'], 'tar' => $row['edate'], 'saat' => $row['ehour']);