php - 将数组从 javascript 发送到 php 无法正常工作

标签 php javascript jquery arrays

我正在以这种方式在 jquery 端创建一个数组。该数组是一个数组数组,其中每个元素都是一个看起来像 [jskey, jsvalue] 的数组。

    var jsarray = [];
//  jsarray.push([jskey, jsvalue]);
    jsarray.push([1, 123]);
    jsarray.push([2, 98]);
    jsarray.push([3, 107]);
    jsarray.push([4, 34]);

然后我在提交之前将数组添加到表单的元素

$('#myform input[name=jsvalues]').val(jsarray);

在 php 方面,我希望收到一个数组数组,但是当我执行 print_r() 或 var_dump() 时,我得到的只是一个看起来像这样的字符串

string() "1,123,2,98,3,107,4,34" 

最佳答案

属性值是字符串。当您将数组转换为字符串时,您将该数组中的每个元素都转换为字符串并以逗号分隔(除非您覆盖 toString() 方法(提示:不要))。

我建议将数组转换为 JSON,然后将其分配给表单控件。然后,您可以在 PHP 中解析 JSON。

http://json.org具有指向 JSON 序列化器/反序列化器的 PHP 和 JS 实现的链接(在底部)。

关于php - 将数组从 javascript 发送到 php 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4869514/

相关文章:

jquery - 悬停不同元素时更改不同按钮的类

php - 计算(设置)PHP 中数组之间的差异?

javascript - 使用指令时未定义 ngModel - Angularjs Controller

javascript - PSD.js 字体颜色代码毫无意义

javascript - JQuery 方法前置在 Internet Explorer 中不起作用

java - 在java中将时间戳转换为ISO860,

php - 在 PHP 中执行 shell 命令而不等待结果

php - 为什么我的电子邮件仍然被视为垃圾邮件?使用mail()函数

javascript - PHP代码执行并防止未经授权的外部访问执行

javascript - 如何发送表单数据并在同一页面中使用ajax动态显示