【php开源代码栏目提醒】:以下是网学会员为您推荐的php开源代码-Session.class.php,希望本篇文章对您学习有所帮助。
<?php
// +----------------------------------------------------------------------
// | ThinkPHP
// +----------------------------------------------------------------------
// | Copyright (c) 2008 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <
Session.class.php为[网学网-网友上传,谢谢支持]。>
// +----------------------------------------------------------------------
// $Id$
define('SESSION_PREFIX', 'THINK_');
define("HTTP_SESSION_STARTED", 1);
define("HTTP_SESSION_CONTINUED", 2);
/**
+------------------------------------------------------------------------------
* Session绠$悊绫?
+------------------------------------------------------------------------------
* @category Think
* @package Think
* @subpackage Util
* @author liu21st <
Session.class.php为[网学网-网友上传,谢谢支持]。>
* @version $Id$
+------------------------------------------------------------------------------
*/
class Session extends Base
{//绫诲畾涔夊紑濮?
/**
+----------------------------------------------------------
* 鍚姩Session
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
static function start()
{
session_start();
if (!isset($_SESSION['__HTTP_Session_Info'])) {
$_SESSION['__HTTP_Session_Info'] = HTTP_SESSION_STARTED;
} else {
$_SESSION['__HTTP_Session_Info'] = HTTP_SESSION_CONTINUED;
}
Session::setExpire(C('SESSION_EXPIRE'));
}
/**
+----------------------------------------------------------
* 鏆傚仠Session
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
static function pause()
{
session_write_close();
}
/**
+----------------------------------------------------------
* 娓呯┖Session
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
static function clearLocal()
{
$local = Session::localName();
unset($_SESSION[$local]);
}
/**
+----------------------------------------------------------
* 娓呯┖Session
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
static function clear()
{
unset($_SESSION);
session_destroy();
}
/**
+----------------------------------------------------------
* 閿姣丼ession
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
static function destroy()
{
unset($_SESSION);
session_destroy();
}
/**
+----------------------------------------------------------
* 妫娴婼essionID
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
static function detectID()
{
if (Session::useCookies()) {
if (isset($_COOKIE[Session::name()])) {
return $_COOKIE[Session::name()];
}
} else {
if (isset($_GET[Session::name()])) {
return $_GET[Session::name()];
}
if (isset($_POST[Session::name()])) {
return $_POST[Session::name()];
}
}
return null;
}
/**
+----------------------------------------------------------
* 璁剧疆鎴栬呰幏鍙栧綋鍓峉ession name
+----------------------------------------------------------
* @param string $name session鍚嶇О
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return string 杩斿洖涔嬪墠鐨凷ession name
+----------------------------------------------------------
*/
static function name($name = null)
{
return isset($name) ? session_name($name) : session_name();
}
/**
+----------------------------------------------------------
* 璁剧疆鎴栬呰幏鍙栧綋鍓峉essionID
+----------------------------------------------------------
* @param string $id sessionID
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void 杩斿洖涔嬪墠鐨剆essionID
+----------------------------------------------------------
*/
static function id($id = null)
{
return isset($id) ? session_id($id) : session_id();
}
/**
+----------------------------------------------------------
* 璁剧疆鎴栬呰幏鍙栧綋鍓峉ession淇濆瓨璺緞
+----------------------------------------------------------
* @param string $path 淇濆瓨璺緞鍚?
+----------------------------------------------------------
* @access public
+----------------------------------------------------------
* @return string
+----------------------------------------------------------
*/
static function path($path = null)
{
return !empty($path)? session_save_path($path):session_save_path();
}
/**
+----------------------------------------------------------
* 璁剧疆Session 杩囨湡鏃堕棿
+----------------------------------------------------------
* @param integer $time 杩囨湡鏃堕棿
* @param boolean $add 鏄惁涓哄鍔犳椂闂?
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
static function setExpire($time, $add = false)
{
if ($add) {
if (!isset($_SESSION['__HTTP_Session_Expire_TS'])) {
$_SESSION['__HTTP_Session_Expire_TS'] = time() + $time;
}
// update session.gc_maxlifetime
$currentGcMaxLifetime = Session::setGcMaxLifetime(null);
Session::setGcMaxLifetime($currentGcMaxLifetim
上一篇:
services.php
下一篇:
法律专业开题报告范文