这与前面提到的Need to display only array value in JSON output有关。
我只想显示像
这样的值[
"autoComplete",
"ColdFusion",
"jQuery Mobile"
];
背景: 我正在通过Jquery mobile使用和AJAX调用从服务器(语言:PHP)检索数据。我想在我的Phonegap应用程序中使用https://github.com/commadelimited/autoComplete.js。
请指教!我是JSON的新手。
答案 0 :(得分:1)
当使用json_encode时,任何具有基于零的数字索引的数组(意味着它不是关联数组,以0开头且不丢失任何数字)将转换为javascript数组而不是js对象文字。您可以在php中使用array_values来获取数字索引的数组中的所有值。
<?php
//a generic array
$a = array(
'foo'=>'bar',
'one'=>'two',
'three'=>'four');
//display the array in php
var_dump($a);
echo '<br>';
//json encode it
$json = json_encode($a);
var_dump($json);
echo '<br>';
//json encode just the values
$json = json_encode(array_values($a));
var_dump($json);
答案 1 :(得分:0)
谢谢乔纳森。
但是我找到了解决方案如下。我希望它对其他人也有用。
$result = mysql_query($sql) or die ("Query error: " . mysql_error());
$records = array();
while($row = mysql_fetch_assoc($result)) {
$records[] = $row["title"];
}
mysql_close($con);
echo json_encode($records);