使用session_set_cookie_params或session_start选项

Use session_set_cookie_params or session_start options

提问人:theking2 提问时间:9/11/2023 最后编辑:theking2 更新时间:9/15/2023 访问量:40

问:

会话 cookie 选项应该放在哪里?在 或 ?session_startsession_set_cookie_params

php.net 的文档有点不清楚,因为它们没有提到.cookie 参数是否在 php.int 中被 中的参数覆盖?我可以在一次调用中组合所有设置(cookie 和其他设置)吗?session_set_cookie_paramssession_set_ cookie_paramssessions_startsession_start

编辑:如果这些可以通过中指定的任何内容进行核弹,那有什么意义呢?session_set_cookie_paramssession_start

php 会话变量

评论

1赞 CBroe 9/11/2023
php.net/manual/en/function.session-start.php:“options:如果提供,这是一个选项的关联数组,将覆盖当前设置的会话配置指令
0赞 theking2 9/11/2023
由于 php.net 的作者没有明确说明这一点,因此至少不是 php.net 我可以猜测,但不能通过您的评估确定。如果您确定,我会在 php.net 上添加注释。
1赞 CBroe 9/11/2023
“如果这些可以被session_start中指定的任何东西核弹,那么session_set_cookie_params的意义何在?”- 只是“较旧的”,之前已经存在,会采取任何“选项”,只是在后来的PHP版本中添加的。session_set_cookie_paramssession_start
0赞 Álvaro González 9/11/2023
我不知道德语翻译是否是最新的(翻译经常过时),但有很多方法可以更改配置,这意味着有很多组合。将它们全部明确记录下来是不切实际的。
2赞 Álvaro González 9/11/2023
关于您的后续问题,撇开向后兼容性不谈,请将它们视为默认值,而不是要强制执行的规则。

答:

0赞 theking2 9/15/2023 #1

该函数可以被认为是过时的,因为所有设置现在(从 PHP7 开始)都可以作为选项数组的一部分设置为 。 (来源 php.netsession_set_cookie_paramssession_start)

为避免混乱,请在此 options 参数中包含 cookie 设置。

仍然使用该功能的一个参数是区分会话设置和与会话相关的 cookie 设置。session_set_cookie_params