我有以下PHP关联数组输出作为对jquery post请求的响应:
Array
(
[0] => Array
(
[user] => 25
)
)
如何在javascript或jquery中迭代上面的PHP关联数组?这可能吗?或者我应该以另一种方式打印PHP的输出?我也可以访问PHP
答案 0 :(得分:2)
在PHP中只使用json_encode
:
$array = array(array('user' => 25));
echo json_encode($array); // [{"user":25}]
在Jquery中:
var data = $.parseJSON(jsonString); // '[{"user":25}]'
console.log(data[0].user); // 25
答案 1 :(得分:2)
这是我在类似应用程序中使用的内容:
PHP:
header("Content-Type: application/json");
if ( $_REQUEST["jsoncallback"] ) {
$callback = htmlentities( $_REQUEST["jsoncallback"] );
}
$output = json_encode( $array );
if ( $callback ) {
$output = $callback . "(" . $output . ")"; // I know the variables can be embedded in the strings, I don't care, I like it this way.
}
echo $output;
使用Javascript:
var getURL = "http://www.example.com/script.php?jsoncallback=?";
jQuery.ajax({
dataType: "json",
url: getURL,
success: function(data){
var obj = jQuery.parseJSON( data );
// now you can loop through the data object
}
});
对于循环部分,此问题/答案可能会有所帮助:How to Loop through plain JavaScript object with objects as members?