关于这个被标记为重复的问题,我没有询问如何在原始问题中编码,但编码是问题的答案。
在我的php中,我用数据库中的数据填充了一个数组(数组中的每个对象都是行,存储为另一个数组)。我正在调用echo json_encode($json);
所以我可以通过android获取它,但它不输出任何东西。
我可以调用每个数组和每个列,如echo $json[#][#];
,并获得预期的结果,所以我知道数组已填充。
我如何把它全部放在那里,这样人们可以用他们贪婪的小指触摸它?
PHP:
<?php
$host="HOST";
$username="USER";
$password="PASS";
$db_name="DATABASE";
$con=mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql = "SELECT * FROM Table WHERE Column = 1";
$result = mysql_query($sql);
$json = array();
if(mysql_num_rows($result))
{
while($row=mysql_fetch_assoc($result))
{
$json[] = array($row['col1'], $row['col2'], $row['col3'], $row['col4'], $row['col5'], $row['col6']);
}
echo json_encode($json);
}
?>
解决
问题出在UTF8上,在某些有文本的列上,偶尔会使用特殊字符(在这种情况下,Å,Ä和Ö)。
感谢评论者@meda建议我使用utf8_encode($row[col])
一切都很好。