php5.3 不支持 session_register() 此函数已启用的解决方法


Posted in PHP onNovember 12, 2013

php从5.2.x升级到5.3.2.出来问题了。有些原来能用的程序报错了。
报错内容是
Deprecated: Function session_register() is deprecated
查了一下是5.3这个session_register就不让用了,降回去?不爽。
搜了一把,有个解决方法是写一个函数

<?php 
// Fix for removed Session functions 
function fix_session_register(){ 
function session_register(){ 
$args = func_get_args(); 
foreach ($args as $key){ 
$_SESSION[$key]=$GLOBALS[$key]; 
} 
} 
function session_is_registered($key){ 
return isset($_SESSION[$key]); 
} 
function session_unregister($key){ 
unset($_SESSION[$key]); 
} 
} 
if (!function_exists('session_register')) fix_session_register(); 
?>

查了一下出现这个问题的地方不多,找到了另外一个方法,直接

session_register( “abc” ) ;
改成
$_SESSION['abc'] = null;
即可

session在php5.3中的变化

在php5.3中运行书中代码会有如下提示:
Function session_is_registered() is deprecated in
Function session_register() is deprecated in

意思是说这两个函数是不赞成的,弃用的。
下面是php官方手册上的代码,注释部分已经说明了不赞成用session_register()

<?php
// Use of session_register() is deprecated 不赞成用session_register()
$barney = "A big purple dinosaur.";
session_register("barney");
// Use of $_SESSION is preferred, as of PHP 4.1.0 首选 $_SESSION
$_SESSION["zim"] = "An invader from another planet.";
// The old way was to use $HTTP_SESSION_VARS
$HTTP_SESSION_VARS["spongebob"] = "He's got square pants.";
?>

并且有如下警告及提示:
Warning
This function has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0.
警告:这个函数在php5.3中已不推荐使用,在php5.4中已被移除。

Note:
If $_SESSION (or $HTTP_SESSION_VARS for PHP 4.0.6 or less) is used, use isset() to check a variable is registered in $_SESSION.
提示:如果 使用了$_SESSION,就用isset()函数来检查。

Caution
If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered() and session_unregister().

PHP 相关文章推荐
MayFish PHP的MVC架构的开发框架
Aug 13 PHP
PHP自定义函数收代码
Aug 01 PHP
关于php curl获取301或302转向的网址问题的解决方法
Jun 02 PHP
PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)
Dec 14 PHP
合并ThinkPHP配置文件以消除代码冗余的实现方法
Jul 22 PHP
深入php内核之php in array
Nov 10 PHP
分享10段PHP常用代码
Nov 11 PHP
分享五个PHP7性能优化提升技巧
Dec 07 PHP
thinkphp3.2.3版本的数据库增删改查实现代码
Sep 22 PHP
php利用gd库为图片添加水印
Nov 09 PHP
php遍历、读取文件夹中图片并分页显示图片的方法
Nov 15 PHP
php 调用百度sms来发送短信的实现示例
Nov 02 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
Nov 12 #PHP
PHP使用正则表达式清除超链接文本
Nov 12 #PHP
PHP统计二维数组元素个数的方法
Nov 12 #PHP
多个PHP中文字符串截取函数
Nov 12 #PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
Nov 12 #PHP
CodeIgniter使用phpcms模板引擎
Nov 12 #PHP
php用正则表达式匹配URL的简单方法
Nov 12 #PHP
You might like
PHP队列用法实例
2014/11/05 PHP
php类的扩展和继承用法实例
2015/06/20 PHP
php实现的递归提成方案实例
2015/11/14 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
2016/03/17 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
2017/04/01 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
2019/04/15 PHP
php多进程中的阻塞与非阻塞操作实例分析
2020/03/04 PHP
CSS+JS构建的图片查看器
2006/07/22 Javascript
对联广告js flash激活
2006/10/19 Javascript
JavaScript实现可拖拽的拖动层Div实例
2015/08/05 Javascript
jquery实现可点击伸缩与展开的菜单效果代码
2015/08/31 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
js下载文件并修改文件名
2017/05/08 Javascript
bootstrap3使用bootstrap datetimepicker日期插件
2017/05/24 Javascript
js实现QQ面板拖拽效果(慕课网DOM事件探秘)(全)
2017/09/19 Javascript
解决ie img标签内存泄漏的问题
2017/10/13 Javascript
Vue-cli中为单独页面设置背景色的实现方法
2018/02/11 Javascript
对vue事件的延迟执行实例讲解
2018/08/28 Javascript
ElementUI多个子组件表单的校验管理实现
2019/11/07 Javascript
vue 检测用户上传图片宽高的方法
2020/02/06 Javascript
Vue(定时器)解决mounted不能获取到data中的数据问题
2020/07/30 Javascript
[00:17]游戏风云独家报道:DD赛后说出数字秘密 吓死你们啊!
2014/07/13 DOTA
[02:13] 完美世界DOTA2联赛PWL DAY5集锦
2020/11/03 DOTA
使用pygame模块编写贪吃蛇的实例讲解
2018/02/05 Python
python实现爬取百度图片的方法示例
2019/07/06 Python
解决Atom安装Hydrogen无法运行python3的问题
2019/08/28 Python
Django实现文章详情页面跳转代码实例
2020/09/16 Python
德国最大的拼图在线商店:Puzzle.de
2016/12/17 全球购物
印度低票价航空公司:GoAir
2017/10/11 全球购物
Whittard官方海外旗舰店:英国百年茶叶品牌
2018/02/22 全球购物
德国拖鞋网站:German Slippers
2019/11/08 全球购物
项目开发计划书
2014/01/09 职场文书
一年级小学生评语
2014/04/22 职场文书
2014企业领导班子四风对照检查材料思想汇报
2014/09/17 职场文书
一行代码python实现文件共享服务器
2021/04/22 Python
Python中json.load()和json.loads()有哪些区别
2021/06/07 Python