数组作为会话变量

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (36)

是否有可能在PHP中创建一个数组作为会话变量。情况是,我有一个表格(第1页),其中一些单元格具有指向特定页面的链接。下一页将列出名称(第2页,我想保留在会话数组中)以及各自的复选框。提交此表单时,将导致一个事务页面(页面3,其中发布的复选框的值保存在数据库中的相应名称)。现在,如果我返回到第一页并单击另一个单元格,会话数组是否将包含新的名称列表或旧名单?

提问于
用户回答回答于

是的,PHP支持将数组作为会话变量。

至于你的第二个问题:一旦你设置了会话变量,它将保持不变,直到你改变它或unset它。因此,如果第3页不更改会话变量,它将保持不变,直到第2页再次更改它。

用户回答回答于

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

$_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文件。

扫码关注云+社区

领取腾讯云代金券