如何使用AJAX读取PHP文件返回的数组中的所有值?

如何使用AJAX读取PHP文件返回的数组中的所有值?,php,ajax,arrays,Php,Ajax,Arrays,我使用AJAX获取多维数组,因此多维数组返回到AJAX,我如何使用AJAX处理数据?我需要读取多维数组中的所有值。我使用以下代码将数组返回到AJAX $resultset=array(); while($row=mysql_fetch_assoc($result)) { $resultset[]=$row; } print_r($resultset); 如何使用AJAX读取PHP文件返回的数组中的所有值?我个人会使用JSON。例如,在php中,使用json编码($resultset)而

我使用AJAX获取多维数组,因此多维数组返回到AJAX,我如何使用AJAX处理数据?我需要读取多维数组中的所有值。我使用以下代码将数组返回到AJAX

$resultset=array();
while($row=mysql_fetch_assoc($result))
{
    $resultset[]=$row;
}
print_r($resultset);

如何使用AJAX读取PHP文件返回的数组中的所有值?

我个人会使用JSON。例如,在php中,使用json编码($resultset)而不是打印。在javascript中,使用一些JSON支持库(jquery/mootools可以)来解码JSON。就是这样。

我个人会使用JSON。例如,在php中,使用json编码($resultset)而不是打印。在javascript中,使用一些JSON支持库(jquery/mootools可以)来解码JSON。就是这样。

PHP

echo json_encode($resultset);
JS:

默认情况下不支持javascript中的json_解码,您可以使用框架来实现此功能。例如:在原型中:

var array = input.evalJSON();
PHP

JS:

默认情况下不支持javascript中的json_解码,您可以使用框架来实现此功能。例如:在原型中:

var array = input.evalJSON();

虽然可以在JavaScript中解析print_r的输出,但在两种语言都已经存在用于其他数据格式的健壮库的情况下,这样做是相当愚蠢的


使用(页面底部的链接会将您带到库中,以便在PHP中生成它并在JavaScript中读取它)

虽然可以用JavaScript解析print\r的输出,但在两种语言都已经存在用于其他数据格式的强大库的情况下,这样做是相当愚蠢的

使用(页面底部的链接会将您带到库中,以便在PHP中生成它并在JavaScript中读取它)

是的,您可以使用JSON(JavaScript对象表示法)跨多个平台传输数据。如果您的数据如下所示:

<?php
  $a = array( );
  $a[ "foo" ] = array( );
  $a[ "bar" ] = array( );
  $a[ "foo" ][ "foo-1" ] = 1;
  $a[ "foo" ][ "foo-2" ] = 2;
  $a[ "foo" ][ "foo-3" ] = 3;
  $a[ "foo" ][ "foo-4" ] = array( "yada", "yada" );
  $a[ "bar" ][ "bar-1" ] = 1;
  $a[ "bar" ][ "bar-2" ] = 2;
  $a[ "bar" ][ "bar-3" ] = 3;
  $a[ "bar" ][ "bar-4" ] = array( "blah", "blah" );
?>
您可以使用JavaScript的eval函数将此字符串转换为对象,并像迭代php数组一样对其进行迭代。

是的,您可以使用JSON(JavaScript对象表示法)跨多个平台传输数据。如果您的数据如下所示:

<?php
  $a = array( );
  $a[ "foo" ] = array( );
  $a[ "bar" ] = array( );
  $a[ "foo" ][ "foo-1" ] = 1;
  $a[ "foo" ][ "foo-2" ] = 2;
  $a[ "foo" ][ "foo-3" ] = 3;
  $a[ "foo" ][ "foo-4" ] = array( "yada", "yada" );
  $a[ "bar" ][ "bar-1" ] = 1;
  $a[ "bar" ][ "bar-2" ] = 2;
  $a[ "bar" ][ "bar-3" ] = 3;
  $a[ "bar" ][ "bar-4" ] = array( "blah", "blah" );
?>

您可以使用JavaScript的eval函数将该字符串转换为一个对象,然后像迭代php数组一样迭代它。

如果对downvotes进行了注释,这将非常有用。史蒂文:在我的例子中,这是原型,但你的选择取决于你的需要。jQuery现在非常流行。如果对否决票进行评论,这将非常有帮助。史蒂文:在我的例子中,这是原型,但你的选择取决于你的需要。jQuery现在非常流行。jQuery有一个很好的内置函数,如下所示:
$.getJSON(url、数据、回调)
。api.jquery.com.jquery上的详细信息和示例有一个很好的内置函数,如下所示:
$.getJSON(url、数据、回调)
。详细信息和示例请访问api.jquery.com.+1,以显示JSON的外观。正如David Dorward所指出的,www.json.org是一个很好的资源,可以更详细地解释它的结构。如果有人知道()、[]和{}在JavaScript中的含义,学习json应该是小菜一碟+1用于显示JSON的外观。正如David Dorward所指出的,www.json.org是一个很好的资源,可以更详细地解释它的结构。如果有人知道()、[]和{}在JavaScript中的含义,学习json应该是小菜一碟!