我有一个这样的选择倍数:
<select multiple name="viewers[]"> ...
选择的值通过 ajax 作为数组发送到 php 脚本。在我的测试服务器上,这很好用:
$viewers = $_POST['viewers'];
foreach ($viewers as $v)
{
//loop through array
}
我刚刚将相同的脚本上传到生产服务器,运行相同版本的 php (5.2.17) ,但它失败了。在生产服务器上,$viewers 变成了一个值为“array”的字符串:
print_r($viewers)
//outputs Array
echo $viewers
//outputs Array
是否有一些 php.ini 设置会强制 php 将 $viewers 视为实际数组?
更新:
我在生产服务器上做了 var_dump($_REQUEST) 并得到:
array(8) {
["viewers"]=>
array(1) {
[0]=>
string(9) "lilamonte"
}
["new_subject"]=>
string(12) "Test Subject"
在测试服务器上,我得到:
Array(5) {
["viewers"]=>
array(1) {
[0]=>
string(10) "libothwell"
}
["new_subject"]=>
string(4) "test"
一个有效,另一个无效。