如何修复session_register()已弃用的问题?如何修复session_register()PHP 5.3中已弃用的问题
3 回答
九州编程
TA贡献1785条经验 获得超4个赞
不要使用它。描述说:
使用当前会话注册一个或多个全局变量。
我想到了两件事:
无论如何,使用全局变量并不好,找到一种方法来避免它们。
您仍然可以使用设置变量
$_SESSION['var'] = "value"
。
另请参阅手册中的警告:
如果您希望脚本无论如何都可以工作
register_globals
,则需要使用该$_SESSION
数组,因为$_SESSION
条目会自动注册。如果您的脚本使用session_register()
,它将无法在register_globals
禁用PHP指令的环境中工作。
这非常重要,因为该register_globals
指令默认设置为False
!
进一步:
这会注册一个
global
变量。如果要在函数内注册会话变量,则需要确保使用global
关键字或$GLOBALS[]
数组使其成为全局变量,或者使用如下所述的特殊会话数组。
和
如果您正在使用
$_SESSION
(或$HTTP_SESSION_VARS
),不使用session_register()
,session_is_registered()
和session_unregister()
。
慕婉清6462132
TA贡献1804条经验 获得超2个赞
使用$_SESSION
直接设置变量。像这样:
$_SESSION['name'] = 'stack';
代替:
$name = 'stack';session_register("name");
- 3 回答
- 0 关注
- 894 浏览
添加回答
举报
0/150
提交
取消