js传递字符串数组到php

WBOY
풀어 주다: 2016-06-23 14:38:35
원래의
1448명이 탐색했습니다.

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

解决了,谢谢各位~

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿