首页 >后端开发 >php教程 >js传递字符串数组到php

js传递字符串数组到php

WBOY
WBOY原创
2016-06-23 14:38:351465浏览

为什么从js传递的字符串数组在php中变成了一个字符串,ajax传递的,代码如下:
js端:
var selected = new Array('1','2');
JSON.stringify(selected);
post....

php端:
$selected = json_decode($_POST['selected']);
这样写$selected是空的 
$selected = $_POST['selected'];
这样的话$selected便是一个字符串,我要的是数组。

求助各位了,折腾好久了。。。


回复讨论(解决方案)

var_dump($selected) ; 是什么结果

echo $_POST['selected'];
贴出结果!

echo $_POST['selected'];
贴出结果!

直接就是1,2 然后count($selected)值为1

完整贴出 print_r($_POST['selected']) 结果。

如果 $selected = array(1,2);
不可能count($selected) = 1
应该是2

$a = explode(',', $_POST['selected']);
print_r($a);

$a = explode(',', $_POST['selected']);
print_r($a);
不太想用这个方法,我真正要用到的是字符串数组,用符号分割可能会有问题。想用json,可是我不太会,老不对

完整贴出 print_r($_POST['selected']) 结果。

如果 $selected = array(1,2);
不可能count($selected) = 1
应该是2

确实是2,感觉json没有用对,求帮助~

var_dump($selected) ; 是什么结果

var_dump($selected) ; 是什么结果

就是1,2 相当于它是一个字符串"1,2" 这样的

JSON.stringify (一个数组参数) 处理过后是一个字符串吧?

JSON.stringify (一个数组参数) 处理过后是一个字符串吧?
我不太懂  也试过这个没有用

var selected = new Array('1','2');
selected = JSON.stringify(selected);
然后传递 selected

解决了,谢谢各位~

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn