首页  >  问答  >  正文

将标题重写为:将"Array as session variable"翻译成中文为"使用数组作为会话变量"

<p>在PHP中,是否可以将数组设置为会话变量?</p> <p>情况是我有一个表格(第一页),其中一些单元格有链接到特定页面。下一页将有一个名字列表(第二页,我想将其保存在一个会话数组中),并带有相应的复选框。提交此表单后,它将导向一个交易页面(第三页),其中已发布的复选框的值将保存在数据库中对应的名字下。现在,如果我返回到第一页并点击另一个单元格,会话数组会包含新的名字列表还是旧的名字列表?</p>
P粉833546953P粉833546953425 天前534

全部回复(2)我来回复

  • P粉318928159

    P粉3189281592023-08-22 16:43:11

    是的,你可以将数组放入会话中,例如:

    $_SESSION['name_here'] = $your_array;

    现在你可以在任何页面上使用 $_SESSION['name_here'],但是在使用任何会话函数之前,请确保在代码中加入 session_start() 行,所以你的代码应该类似于:

    session_start();
     $_SESSION['name_here'] = $your_array;

    可能的示例:

    session_start();
     $_SESSION['name_here'] = $_POST;

    现在你可以在任何页面上这样获取字段值:

    echo $_SESSION['name_here']['field_name'];

    至于你问题的第二部分,除非你分配了不同的数组数据,否则会话变量将保留在那里:

    $_SESSION['name_here'] = $your_array;

    会话的生存时间在 php.ini 文件中设置。

    更多信息请点击这里

    回复
    0
  • P粉166779363

    P粉1667793632023-08-22 00:57:00

    是的,PHP支持将数组作为会话变量。请参考此页面的示例。

    至于您的第二个问题:一旦设置了会话变量,除非您更改它或unset它,它将保持不变。因此,如果第三个页面不更改会话变量,它将保持与第二个页面更改之前相同。

    回复
    0
  • 取消回复