php - 将数组传递给$ _POST

时间:2013-03-03 06:52:52

标签: php arrays post

我正在开发一个PHP应用程序,它有一个(很多)数组,对程序的运行至关重要。我需要在页面加载之间保持此数组的内容完整。我知道$_POST可用于在页面加载时保留大多数数据类型,但是如何放置数组...在数组中?

数组是一个简单的数组,但它的索引数量取决于用户输入 - 它的范围可以是1到50之间。

有没有办法在$_POST的页面加载中保留数组的数据?

2 个答案:

答案 0 :(得分:3)

你的问题不是很清楚。在页面之间传递变量应该保存在$_SESSION而不是$_POST变量中。在会话变量中存储数组与将任何变量保存到会话变量相同。

$session_start();
$_SESSION['my_array'] = array('one', 'two', 'three');
foreach($_SESSION['my_array'] as $value) {
    echo $value;
}

答案 1 :(得分:0)

客户端/服务器开发中的规则#1:永远不要信任客户端

最好将数组存储在PHP的会话状态中,或将其序列化为磁盘。

幸运的是,这很简单:

$_SESSION['someKey]' = $myArray;

您的建议将其存储在页面中还有另一个问题:如果用户使用“后退”按钮并重新提交或以其他方式中断页面排序会发生什么?通过在客户端上存储状态,您不能再依赖它了。