使用fetchAll(PDO::FETCH_ASSOC)
获取此类数组
$array =
Array
(
[0] => Array
(
[FinalCurrencyRate] => 0.000062
)
)
需要json_encode
在
$.post("__02.php", { 'currency': currency }, function(data, success) {
$('#currency_load').html(data.FinalCurrencyRate);
$('#currency_load0').html(data.FinalCurrencyRate0);
$('#currency_load1').html(data.FinalCurrencyRate1);//and so on
}, "json");
如果只是echo json_encode($array);
则不起作用。
需要像这样转换为json格式数组:
$arr = array ('FinalCurrencyRate'=>"0.000062");
要转换为json格式,请编写此类代码
$json_array = "{";
$flag_comma = 0;
foreach($array as $i =>$array_modified) {
if ($flag_comma == 0) {
$json_array .="'FinalCurrencyRate". $i."'=>'". $array_modified[FinalCurrencyRate]. "'";
$flag_comma = 1;
}
else {
$json_array .=", 'FinalCurrencyRate". $i."'=>'". $array_modified[FinalCurrencyRate]. "'";
}
}
$json_array .= "}";
然后echo json_encode($json_array);
。只有一个echo json_encode
。
但是不起作用。
了解代码中存在转换为json格式的错误。请问需要纠正什么?
答案 0 :(得分:1)
如果我理解正确你只想从阵列返回第一行,那么你只需要这样做
echo json_encode($array[0]);
<强>更新强>
我想我现在看到你正在尝试做什么,你试图将索引附加到每一行的FinalCurrencyRate
键。不需要这样做,你应该做的是将你的javascript代码更改为:
$('#currency_load0').html(data[0].FinalCurrencyRate);
$('#currency_load1').html(data[1].FinalCurrencyRate);//and so on