【问题标题】:json_encode(): Sending both a Table and Variables from PHP to JavaScriptjson_encode():将表和变量从 PHP 发送到 JavaScript
【发布时间】:2014-11-01 18:54:38
【问题描述】:

从我的 PHP 脚本中,我必须在一次 AJAX 返回调用中向 JavaScript 发送两条数据:

  • 具有应用程序的相对较大的数组。 200 行 10 列
  • 提供有关该数组的附加信息的一组变量

这两条信息都应该在一个 JavaScript 返回调用中从 PHP 返回到 JavaScript。

从 PHP 发送数组的标准方法是使用 json_encode()。然而,这个函数只接受一个参数,一个字符串或一个数组。

那么,如何将表格和变量从 PHP 发送到 JavaScript?如果json_encode() 不能处理这个任务,还有其他可靠的方法吗?

我尝试将变量集和表组合成一个数组,然后将该数组传递给 JavaScript。但是,当我想获得这样的数组的长度时,这很有效,其中表和变量组合在一起,它根本不起作用。是什么原因,才来这里咨询这个问题的。

非常感谢。

【问题讨论】:

  • 将表数组和变量集放在一个数组中,并对其进行json编码。
  • @kums:您好,感谢您的想法。是的,我已经做到了。但是,我遇到了另一个问题。在 JavaScript 中,我必须得到 json_array.length,这不适用于这个不规则的二维数组。我想到,我必须解决问题的根源,从而在将变量集和表发送到 JavaScript 之前将其分离。
  • 我的意思是:$package = Array($dbarray, $vars); json_encode($package);
  • @kums:效果很好。非常感谢你。如果您写的是简短答案,而不是此评论,我会将其标记为已接受的答案。

标签: javascript php arrays ajax


【解决方案1】:

您可以将表格数组和变量集数组打包成一个数组:

$package = Array($dbarray, $vars); 

$json_data = json_encode($package);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多