php5.3 不支持 session_register() 此函數(shù)已啟用的解決方法
php從5.2.x升級到5.3.2.出來問題了。有些原來能用的程序報錯了。
報錯內(nèi)容是
Deprecated: Function session_register() is deprecated
查了一下是5.3這個session_register就不讓用了,降回去?不爽。
搜了一把,有個解決方法是寫一個函數(shù)
<?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();
?>
查了一下出現(xiàn)這個問題的地方不多,找到了另外一個方法,直接
把
session_register( “abc” ) ;
改成
$_SESSION['abc'] = null;
即可
session在php5.3中的變化
在php5.3中運行書中代碼會有如下提示:
Function session_is_registered() is deprecated in
Function session_register() is deprecated in
意思是說這兩個函數(shù)是不贊成的,棄用的。
下面是php官方手冊上的代碼,注釋部分已經(jīng)說明了不贊成用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.
警告:這個函數(shù)在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()函數(shù)來檢查。
Caution
If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered() and session_unregister().
- php查看session內(nèi)容的函數(shù)
- PHP Session_Regenerate_ID函數(shù)雙釋放內(nèi)存破壞漏洞
- 解析php session_set_save_handler 函數(shù)的用法(mysql)
- 注意:php5.4刪除了session_unregister函數(shù)
- php使用$_POST或$_SESSION[]向js函數(shù)傳參
- php中使用session_set_save_handler()函數(shù)把session保存到MySQL數(shù)據(jù)庫實例
- php中session_id()函數(shù)詳細(xì)介紹,會話id生成過程及session id長度
- PHP session 會話處理函數(shù)
相關(guān)文章
總結(jié)PHP代碼規(guī)范、流程規(guī)范、git規(guī)范
這篇內(nèi)容我們整理總結(jié)了關(guān)于PHP代碼規(guī)范、流程規(guī)范、git規(guī)范的詳細(xì)內(nèi)容,對此有興趣的朋友可以學(xué)習(xí)下。2018-06-06php如何調(diào)用webservice應(yīng)用介紹
Web Service也叫XML Web Service WebService是一種可以接收從Internet或者Intranet上的其它系統(tǒng)中傳遞過來的請求,輕量級的獨立的通訊技術(shù),接下來將詳細(xì)介紹php如何調(diào)用webservice,需要的朋友可以了解下2012-11-11PHP中unset,array_splice刪除數(shù)組中元素的區(qū)別
php中刪除數(shù)組元素是非常的簡單的,但有時刪除數(shù)組需要對索引進行一些排序要求我們會使用到相關(guān)的函數(shù),這里我們來介紹使用unset,array_splice刪除數(shù)組中的元素區(qū)別吧2014-07-07php allow_url_include的應(yīng)用和解釋
PHP常常因為它可能允許URLS被導(dǎo)入和執(zhí)行語句被人們指責(zé)。事實上,這件事情并不是很讓人感到驚奇,因為這是導(dǎo)致稱為Remote URL Include vulnerabilities的php應(yīng)用程序漏洞的最重要的原因之一。2010-04-04php插入中文到sqlserver 2008里出現(xiàn)亂碼的解決辦法分享
今天使用php操作數(shù)據(jù)庫時發(fā)現(xiàn)插入SQL Server 2008數(shù)據(jù)庫里的中文字段出現(xiàn)亂碼,通過下面的方法解決了,需要的朋友可以參考下2012-07-07