我在PHP中编写了一个脚本,该脚本从MySQL数据库获取值并将值输出为JSON。但是,我遇到了问题。下面的代码:PHP回声破坏
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("stitchdex");
$query = mysql_query("SELECT image, price, description FROM {$_GET['table']}");
$jsonString = "{\"images\":[";
$numrows = mysql_num_rows($query);
$i=0;
while ($row = mysql_fetch_array($query)) {
$jsonString .= "{\"image\":\"{$row['image']}\", \"price\":\"{$row['price']}\", \"description\":\"{$row['description']}\"}";
if (($numrows-1) == $i) echo "";
else echo ",";
$i++;
}
$jsonString .= "]}";
echo $jsonString;
?>
但它输出:
,,,,,,,,,,,,,,,,,{"images":[{"image":"priceguide1.jpg", "price":"", "description":"Diagram of Options"}{"image":"2ndamendfront.jpg", "price":"$109.00", "description":"Total of 3 laser etchings"}{"image":"DSC_0120.jpg", "price":"$99.00", "description":"Designer Kydex 1 Laser Etching"}{"image":"DSC_0121.jpg", "price":"", "description":"Lazer Etching on Back"}{"image":"gilbert.jpg", "price":"$109.00", "description":"Designer Kydex 2 Lazer Etchings"}{"image":"glock23-carbonfiber-red1.jpg", "price":"$79.00", "description":""}{"image":"irish1.jpg", "price":"$129.00", "description":"Designer Kydex Two Tone Leather & 3 Laser Etchings Two on front One on Back"}{"image":"irish2.jpg", "price":"$129.00", "description":"Designer Kydex Two Tone Leather & 3 Laser Etchings Two on front One on Back"}{"image":"klover-glock-2.jpg", "price":"$129.00", "description":"Designer Kydex Two Tone Leather & 3 Laser Etchings Two on front One on Back"}{"image":"priceguide1.jpg", "price":"", "description":"Diagram of Options"}{"image":"2ndamendfront.jpg", "price":"$109.00", "description":"Total of 3 laser etchings"}{"image":"DSC_0120.jpg", "price":"$99.00", "description":"Designer Kydex 1 Laser Etching"}{"image":"DSC_0121.jpg", "price":"", "description":"Lazer Etching on Back"}{"image":"gilbert.jpg", "price":"$109.00", "description":"Designer Kydex 2 Lazer Etchings"}{"image":"glock23-carbonfiber-red1.jpg", "price":"$79.00", "description":""}{"image":"irish1.jpg", "price":"$129.00", "description":"Designer Kydex Two Tone Leather & 3 Laser Etchings Two on front One on Back"}{"image":"irish2.jpg", "price":"$129.00", "description":"Designer Kydex Two Tone Leather & 3 Laser Etchings Two on front One on Back"}{"image":"klover-glock-2.jpg", "price":"$129.00", "description":"Designer Kydex Two Tone Leather & 3 Laser Etchings Two on front One on Back"}]}
这将是有效的JSON如果逗号分隔的“图像”数组中的对象,但由于某些原因脚本输出所有的逗号先。为什么是这样?