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 相关文章推荐
JAVA/JSP学习系列之四
Oct 09 PHP
php下将XML转换为数组
Jan 01 PHP
让的PHP代码飞起来的40条小技巧(提升php效率)
Apr 12 PHP
PHP 金额数字转换成英文
May 06 PHP
php flv视频时间获取函数
Jun 29 PHP
php 判断服务器操作系统的类型
Feb 17 PHP
php从csv文件读取数据并输出到网页的方法
Mar 14 PHP
php动态生成版权所有信息的方法
Mar 24 PHP
PHP编程中尝试程序并发的几种方式总结
Mar 21 PHP
简单理解PHP的面向对象编程方式
May 17 PHP
详解EventDispatcher事件分发组件
Dec 25 PHP
php 从一个数组中随机的取出若干个不同的数实例
Dec 31 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编写注册后Email激活验证的实例代码
2013/03/11 PHP
PHP+Memcache实现wordpress访问总数统计(非插件)
2014/07/04 PHP
CodeIgniter中使用cookie的三种方式详解
2014/07/18 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
jscript之Read an Excel Spreadsheet
2007/06/13 Javascript
走出JavaScript初学困境—js初学
2008/12/29 Javascript
jquery实现checkbox全选全不选的简单实例
2013/12/31 Javascript
node.js下when.js 的异步编程实践
2014/12/03 Javascript
javascript中的正则表达式使用指南
2015/03/01 Javascript
NodeJS与HTML5相结合实现拖拽多个文件上传到服务器的实现方法
2016/07/26 NodeJs
Bootstrap modal 多弹窗之叠加引起的滚动条遮罩阴影问题
2017/02/27 Javascript
mui back 返回刷新页面的实例
2017/12/06 Javascript
微信小程序scroll-view仿拼多多横向滑动滚动条
2020/04/21 Javascript
Vue插槽原理与用法详解
2019/03/05 Javascript
jQuery实现点击滚动到指定元素上的方法分析
2020/03/19 jQuery
vue 实现锚点功能操作
2020/08/10 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
2020/11/02 Javascript
浅谈python socket函数中,send与sendall的区别与使用方法
2017/05/09 Python
在Qt中正确的设置窗体的背景图片的几种方法总结
2019/06/19 Python
淘宝秒杀python脚本 扫码登录版
2019/09/19 Python
在Python 的线程中运行协程的方法
2020/02/24 Python
Python使用shutil模块实现文件拷贝
2020/07/31 Python
python把一个字符串切开的实例方法
2020/09/27 Python
Scrapy-Redis之RedisSpider与RedisCrawlSpider详解
2020/11/18 Python
联想法国官方网站:Lenovo法国
2018/10/18 全球购物
Emma Bridgewater官网:英国餐具制造商
2019/11/24 全球购物
一份全面的PHP面试问题考卷
2012/07/15 面试题
监察建议书范文
2014/03/12 职场文书
监察建议书格式
2014/05/19 职场文书
学习保证书怎么写
2015/02/26 职场文书
2015年农村党员干部主题教育活动总结
2015/03/25 职场文书
立案决定书范文
2015/06/24 职场文书
网络新闻该怎么写?这些写作技巧你都知道吗?
2019/08/26 职场文书
nginx proxy_cache 缓存配置详解
2021/03/31 Servers
JS封装cavans多种滤镜组件
2022/02/15 Javascript
python函数的两种嵌套方法使用
2022/04/02 Python