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 相关文章推荐
PHP+MYSQL开发工具及资源收藏
Jan 02 PHP
PHP执行速率优化技巧小结
Mar 15 PHP
PHP form 表单传参明细研究
Jul 17 PHP
php排序算法(冒泡排序,快速排序)
Oct 09 PHP
php unset全局变量运用问题的深入解析
Jun 17 PHP
Drupal读取Excel并导入数据库实例
Mar 02 PHP
支持中文和其他编码的php截取字符串函数分享(截取中文字符串)
Mar 13 PHP
CI框架开发新浪微博登录接口源码完整版
May 28 PHP
ThinkPHP中__initialize()和类的构造函数__construct()用法分析
Nov 29 PHP
基于Laravel实现的用户动态模块开发
Sep 21 PHP
PHP CURL使用详解
Mar 21 PHP
tp5框架基于ajax实现异步删除图片的方法示例
Feb 10 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
中国的第一台收音机
2021/03/01 无线电
晶体管来复再生式二管收音机
2021/03/02 无线电
B2K与车机的中波PK
2021/03/02 无线电
php快速url重写 更新版[需php 5.30以上]
2010/04/20 PHP
服务器变量 $_SERVER 的深入解析
2013/07/02 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
PHP常用算法和数据结构示例(必看篇)
2017/03/15 PHP
Alliance vs AM BO3 第一场2.13
2021/03/10 DOTA
js事件(Event)知识整理
2012/10/11 Javascript
javascript客户端遍历控件与获取父容器对象示例代码
2014/01/06 Javascript
javascript实现的一个随机点名功能
2014/08/26 Javascript
jQuery判断对象是否存在的方法
2015/02/05 Javascript
jQuery实现鼠标划过修改样式的方法
2015/04/14 Javascript
微信小程序 登录实例详解
2017/01/16 Javascript
jQuery中animate()的使用方法及解决$(”body“).animate({“scrollTop”:top})不被Firefox支持的问题
2017/04/04 jQuery
Ionic3 UI组件之Gallery Modal详解
2017/06/07 Javascript
vue.js评论发布信息可插入QQ表情功能
2017/08/08 Javascript
jQuery实现的鼠标滚轮控制图片缩放功能实例
2017/10/14 jQuery
详解基于iview-ui的导航栏路径(面包屑)配置
2019/02/22 Javascript
Vue scrollBehavior 滚动行为实现后退页面显示在上次浏览的位置
2019/05/27 Javascript
简单了解JavaScript中的执行上下文和堆栈
2019/06/24 Javascript
详解vuex的简单todolist例子
2019/07/14 Javascript
vue弹出框组件封装实例代码
2019/10/31 Javascript
[57:50]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第二局
2016/03/05 DOTA
尝试使用Python多线程抓取代理服务器IP地址的示例
2015/11/09 Python
使用Python神器对付12306变态验证码
2016/01/05 Python
Django框架的使用教程路由请求响应的方法
2018/07/03 Python
django如何连接已存在数据的数据库
2018/08/14 Python
python学习之hook钩子的原理和使用
2018/10/25 Python
PyQt5的安装配置过程,将ui文件转为py文件后显示窗口的实例
2019/06/19 Python
PyTorch预训练Bert模型的示例
2020/11/17 Python
公司承诺书范文
2014/05/19 职场文书
法院授权委托书范文
2014/08/02 职场文书
秋季运动会加油词
2015/07/18 职场文书
党员读书活动心得体会
2016/01/14 职场文书
教你用python控制安卓手机
2021/05/13 Python