我正在尝试将数组存储在元素的值中,然后使用ajax来打印数组,但是当我尝试使用print_r()打印数组时,而不是打印数组,它打印出来字阵。我究竟做错了什么?
<?php
$array[0] = 0;
$array[1] = 1;
$array[2] = 2;
echo "<input id = 'array' type = 'hidden' value = '$array'>";
//more codes
?>
在JavaScript中:
var array = $("#"+array).val();
//more codes
data: { array: array },
在第二页
array = $_POST['array'];
print_r(array);
结果
array
预期结果
0
1
2
答案 0 :(得分:2)
在JavaScript上使用它之前将数组转换为json
echo "<input id = 'array' type = 'hidden' value = '" . json_encode($array) . "'>";
在第二页上解码:
$array = json_decode($_POST['array']);
print_r(array);
答案 1 :(得分:0)
javascript和php有不同的语法用于数组。
你应该使用
echo "<input id = 'array' type = 'hidden' value = '". implode(',', $array) ."'>";
...
在第二页
$array = $_POST['array'];
array = explode(',', $array);
print_r(array);