session在php5.3中的变化 session_is_registered() is deprecated in
在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().
php5.3 不支持 session_register() 此函数已删除(解决办法)
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中的变化 session_is_registered() is deprecated in
-
session在php5.3中的变化 session_is_registered() is deprecated in
-
session在php5.3中的变化 session_is_registered() is deprecated in_php技巧
-
session在php5.3中的变化 session_is_registered() is deprecated in_PHP教程
-
session在php5.3中的变化 session_is_registered() is deprecated in_php技巧
-
session在php5.3中的变化 session_is_registered() is deprecated in_PHP教程
-
session在php5.3中的变化 session_is_registered() is deprecated in