Rumah  >  Artikel  >  pembangunan bahagian belakang  >  js传递字符串数组到php

js传递字符串数组到php

WBOY
WBOYasal
2016-06-23 14:38:351445semak imbas

为什么从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

解决了,谢谢各位~

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn