/**
  * セッション処理を行う
  *
  * @access  public
  */
 function execute()
 {
     $log =& LogFactory::getLog();
     $log->trace("Filter_Sessionの前処理が実行されました", "Filter_SessionExtra#execute");
     $container =& DIContainerFactory::getContainer();
     //$session =& new Session;
     $session =& new SessionExtra();
     $container->register($session, "Session");
     $attributes = $this->getAttributes();
     $modeArray = array();
     if (isset($attributes["mode"])) {
         $modeArray = explode(",", $attributes["mode"]);
         foreach ($modeArray as $key => $value) {
             $modeArray[$key] = trim($value);
         }
     } else {
         $modeArray[] = "start";
     }
     if (isset($attributes["name"])) {
         $session->setName($attributes["name"]);
     }
     if (isset($attributes["id"])) {
         $session->setID($attributes["id"]);
     }
     if (isset($attributes["savePath"])) {
         $session->setSavePath($attributes["savePath"]);
     }
     if (isset($attributes["cacheLimiter"])) {
         $session->setCacheLimiter($attributes["cacheLimiter"]);
     }
     if (isset($attributes["cacheExpire"])) {
         $session->setCacheExpire($attributes["cacheExpire"]);
     }
     if (isset($attributes["useCookies"])) {
         $session->setUseCookies($attributes["useCookies"]);
     }
     if (isset($attributes["lifetime"])) {
         $session->setCookieLifetime($attributes["lifetime"]);
     }
     if (isset($attributes["path"])) {
         $session->setCookiePath($attributes["path"]);
     }
     if (isset($attributes["domain"])) {
         $session->setCookieDomain($attributes["domain"]);
     }
     if (isset($attributes["secure"])) {
         $session->setCookieSecure($attributes["secure"]);
     }
     if (version_compare(phpversion(), '5.3.0', '>=') && MobileCheck::isMobile()) {
         ini_set("session.use_only_cookies", 0);
     }
     if (in_array('start', $modeArray)) {
         $session->start();
     }
     $filterChain =& $container->getComponent("FilterChain");
     $filterChain->execute();
     if (in_array('close', $modeArray)) {
         $session->close();
     }
     $log->trace("Filter_Sessionの後処理が実行されました", "Filter_SessionExtra#execute");
 }
示例#2
0
<?php

ob_start("ob_gzhandler");
require_once 'inc/classes/Mobilecheck.php';
$detect = new MobileCheck();
$page = 'index';
if ($detect->isMobile()) {
    include 'inc/doctype-mobile.inc';
    include 'inc/head-mobile.inc';
    include 'inc/mobile.php';
} else {
    include 'inc/doctype-standard.inc';
    include 'inc/head-standard.inc';
    include 'inc/standard.php';
}
ob_flush();