/** * start * * @Param $MemcacheObject * @Access public * @Return void */ public static function start($MemcacheObject) { //将 session.save_handler 设置为 user(自定义),而不是默认的 files ini_set('session.save_handler', 'user'); //不使用 GET/POST 变量方式,如果有需要请手动去掉注释 //ini_set('session.use_trans_sid', 0); //设置垃圾回收最大生存时间,如果有需要请手动去掉注释 //ini_set('session.gc_maxlifetime', 3600); //使用 COOKIE 保存 SESSION ID 的方式,如果有需要请手动去掉注释 //ini_set('session.use_cookies', 1); //ini_set('session.cookie_path', '/'); //多主机共享保存 SESSION ID 的 COOKIE,如果有需要请手动去掉注释 //ini_set('session.cookie_domain','.youDomain.com'); if (!$MemcacheObject) { MyException::Exception('请确认Memcache开启'); } self::$m = $MemcacheObject; self::$lifeTime = ini_get('session.gc_maxlifetime'); self::$time = time(); session_set_save_handler(array(__CLASS__, 'open'), array(__CLASS__, 'close'), array(__CLASS__, 'read'), array(__CLASS__, 'write'), array(__CLASS__, 'destroy'), array(__CLASS__, 'gc')); session_start(); return TRUE; }
include './Public/Function/Function.php'; if (defined('MEMCACHE') && MEMCACHE) { if (extension_loaded('memcache')) { if (!MyMemcache::ConnectError()) { Debug::addmsg('<font color="red">连接memcache服务器失败,请确认IP或端口正确!</font>'); } else { Debug::addmsg('开启Memcache'); } } else { Debug::addmsg('<font color="red">PHP没有安装memcache扩展模块,请先安装!</font>'); } } else { Debug::addmsg('<span style="color:red;">[未使用Memcache]</span>'); } if (IS_SESSION_TO_MEMCACHE && MEMCACHE) { SessionToMem::start(MyMemcache::getMemcache()); Debug::addmsg('开启Session==>Memcache'); } else { session_start(); } Debug::addmsg('SessionID: ' . session_id()); if (empty($_SESSION['configMtime'])) { $_SESSION['configMtime'] = filemtime('./Public/Config.inc.php'); } if (filemtime('./Public/Config.inc.php') > $_SESSION['configMtime']) { Struct::init(); //当修改配置文件,同样执行一次框架结构类 //自动根据数据库驱动切换继承关系 $_SESSION['configMtime'] = filemtime('./Public/Config.inc.php'); $String = file_get_contents(RELUC_DIR . 'Kernel/Model.class.php'); $replaceMent = 'extends Base' . ucfirst(strtolower(DB_DRIVER)) . "\n";