从javascript发送数组到PHP无法正常工作

zmo*_*mol 1 javascript php arrays jquery

我正在以这种方式在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]);
Run Code Online (Sandbox Code Playgroud)

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

$('#myform input[name=jsvalues]').val(jsarray);
Run Code Online (Sandbox Code Playgroud)

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

string() "1,123,2,98,3,107,4,34" 
Run Code Online (Sandbox Code Playgroud)

Que*_*tin 5

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

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

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