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 相关文章推荐
mysql 中InnoDB和MyISAM的区别分析小结
Apr 15 PHP
php 移除数组重复元素的一点说明
Nov 27 PHP
php数组函数序列之array_values() 获取数组元素值的函数与方法
Oct 30 PHP
用PHP书写安全的脚本代码
Feb 05 PHP
PHP中ob_start函数的使用说明
Nov 11 PHP
php中创建和调用webservice接口示例
Jul 25 PHP
php的GD库imagettftext函数解决中文乱码问题
Jan 24 PHP
php编程中echo用逗号和用点号连接的区别
Mar 26 PHP
PHP实现RSA签名生成订单功能【支付宝示例】
Jun 06 PHP
PHP常见的几种攻击方式实例小结
Apr 29 PHP
Laravel框架之解决前端显示图片问题
Oct 24 PHP
PHP中->和=>的意思
Mar 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 使用curl提交json格式数据
2013/06/29 PHP
推荐一款MAC OS X 下php集成开发环境mamp
2014/11/08 PHP
PHP中使用BigMap实例
2015/03/30 PHP
PHP编程 SSO详细介绍及简单实例
2017/01/13 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
js 图片轮播(5张图片)
2008/12/30 Javascript
JavaScript OOP面向对象介绍
2010/12/02 Javascript
浅谈Javascript Base64 加密解密
2014/12/28 Javascript
zepto.js中tap事件阻止冒泡的实现方法
2015/02/12 Javascript
Javascript闭包实例详解
2015/11/29 Javascript
JavaScript中点击事件的写法
2016/06/28 Javascript
BootstrapValidator实现注册校验和登录错误提示效果
2017/03/10 Javascript
node+express+ejs使用模版引擎做的一个示例demo
2017/09/18 Javascript
JS设计模式之惰性模式(二)
2017/09/29 Javascript
微信小程序 动画的简单实例
2017/10/12 Javascript
动态加载权限管理模块中的Vue组件
2018/01/16 Javascript
vue-cli项目配置多环境的详细操作过程
2018/10/30 Javascript
在LayUI图片上传中,解决由跨域问题引起的请求接口错误的方法
2019/09/24 Javascript
Python计算程序运行时间的方法
2014/12/13 Python
python通过pip更新所有已安装的包实现方法
2017/05/19 Python
Python使用jsonpath-rw模块处理Json对象操作示例
2018/07/31 Python
实例讲解python中的序列化知识点
2018/10/08 Python
PyTorch中permute的用法详解
2019/12/30 Python
Python文件读写w+和r+区别解析
2020/03/26 Python
python RSA加密的示例
2020/12/09 Python
CSS3网格的三个新特性详解
2014/04/04 HTML / CSS
美国领先的汽车轮胎和轮毂供应商:TireBuyer
2016/07/21 全球购物
英国儿童设计师服装的领先零售商:Base
2019/03/17 全球购物
英语专业学生个人求职信范文
2014/01/06 职场文书
《黄河颂》教学反思
2014/02/07 职场文书
2014年小学数学工作总结
2014/12/12 职场文书
初中家长评语和期望
2014/12/26 职场文书
五年级上册复习计划
2015/01/19 职场文书
新闻发布会新闻稿
2015/07/17 职场文书
通讯稿格式及范文
2015/07/22 职场文书
python 对图片进行简单的处理
2021/06/23 Python