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分页函数
Oct 09 PHP
php 图片上传类代码
Jul 17 PHP
PHP下编码转换函数mb_convert_encoding与iconv的使用说明
Dec 16 PHP
PHP has encountered an Access Violation 错误的解决方法
Jan 17 PHP
php_screw 1.5:php加密: 安装与使用详解
Jun 20 PHP
php管理nginx虚拟主机shell脚本实例
Nov 19 PHP
php抽象类使用要点与注意事项分析
Feb 09 PHP
完美解决phpdoc导出文档中@package的warning及Error的错误
May 17 PHP
PHP转换文本框内容为HTML格式的方法
Jul 20 PHP
Zend Framework数据库操作技巧总结
Feb 18 PHP
Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解
Apr 06 PHP
详解阿里云视频直播PHP-SDK接入教程
Jul 09 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 创建标签云函数代码
2010/05/26 PHP
header跳转和include包含问题详解
2012/09/08 PHP
PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
2013/03/06 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
2014/07/22 PHP
php项目中类的自动加载实例讲解
2019/09/12 PHP
MacOS下PHP7.1升级到PHP7.4.15的方法
2021/02/22 PHP
ie 调试javascript的工具
2009/04/29 Javascript
JavaScript实现当网页加载完成后执行指定函数的方法
2015/03/21 Javascript
ES6新特性六:promise对象实例详解
2017/04/21 Javascript
详解A标签中href=&quot;&quot;的几种用法
2017/08/20 Javascript
Angular 向组件传递模板的两种方法
2018/02/23 Javascript
解决低版本的浏览器不支持es6的import问题
2018/03/09 Javascript
layui 对table中的数据进行转义的实例
2019/09/12 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
2020/08/28 Javascript
Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互的实例
2020/11/18 Vue.js
Python Trie树实现字典排序
2014/03/28 Python
详解Python中的正则表达式的用法
2015/04/09 Python
Python中的深拷贝和浅拷贝详解
2015/06/03 Python
python学习教程之使用py2exe打包
2017/09/24 Python
在Windows中设置Python环境变量的实例讲解
2018/04/28 Python
详解Django中间件执行顺序
2018/07/16 Python
Python使用paramiko操作linux的方法讲解
2019/02/25 Python
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用
2019/04/03 Python
python 列表输出重复值以及对应的角标方法
2019/06/11 Python
Django 路由控制的实现
2019/07/17 Python
python 实现绘制整齐的表格
2019/11/18 Python
交通专业个人自荐信格式
2013/09/23 职场文书
桥梁与隧道工程专业本科生求职信
2013/10/08 职场文书
出纳岗位职责模板
2013/11/27 职场文书
五十岁生日宴会答谢词
2014/01/15 职场文书
会计人员演讲稿
2014/09/11 职场文书
呼兰河传读书笔记
2015/06/30 职场文书
小学作文指导之如何写人?
2019/07/08 职场文书
Pytest之测试命名规则的使用
2021/04/16 Python
【海涛教你打DOTA】死灵飞龙第一视角解说
2022/04/01 DOTA
table不让td文字溢出操作方法
2022/12/24 HTML / CSS