如何在会话中将多个变量存储为多维数组?

时间:2013-02-04 06:47:32

标签: php multidimensional-array

我有3个表单文件,如form1.php,form2.php,form3.php和index.php文件以及output.php文件 在这些form1,form2,form3文件中我有3个表单,其中隐藏字段的值为 step ,它在我的index.php文件中调用,以便通过下一个按钮调用。我的索引文件包含 <?php

switch ($_POST['step']) {

    case 2:
        require_once 'form2.php';
        break;

    case 3:
        require_once 'form3.php';
        break;

    case 4:
        require_once 'form4.php';
        break;

    case 1:
    default:
        require_once 'form1.php';
}

&GT;

我想在多维数组中存储用户输入数据(任何时候点击下一个按钮)时输入字段的所有值,以便我可以检索每个值以供将来使用 就像名字字段一样,它就像一个数组,用户在输入字段中给出了他的名字的时间,它将存储在该名称数组中,就像其他人一样

我也尝试了这个

<?php
 session_start();
 require_once 'form3.php';
foreach ($_SESSION as $key => $value) {
     $_SESSION['POST'][$key][] = $value;
}
print_r($_SESSION); 
?>

1 个答案:

答案 0 :(得分:0)

完成此功能后:

foreach ($_SESSION as $key => $value) {
$_SESSION['POST'][$key][] = $value;
}

第一次进行多维子阵列$ _SESSION ['POST'],下次所有子阵列$ _SESSION ['POST']将被添加到多维子阵列$ _SESSION ['POST'] [' POST']。您将获得非结构化数组$ _SESSION以及子数组中的子数组。

我认为你需要改变程序的逻辑,如下所示: 对数组$ _POST进行排序,并在子流$ _SESSION ['POST']中获取所有值及其键, 下次如果数组$ _POST中的重复键为$ _SESSION ['POST'] [$ key] ['count']添加1,或者,如果要保存输入数据的所有值,请将它们保存在子数组$ _SESSION [' POST'] [$关键] []。通过函数end()获取最后一个元素。