Ejemplo n.º 1
0
 /**
  * 将PATH_INFO解析结果放到指定容器中
  */
 private static function set_request($get = array())
 {
     try {
         if (loader::fileExist(self::$folder . $get[0], 'controller')) {
             self::$get['controller'] = self::$folder . array_shift($get);
             self::$get['method'] = $get[0] ? array_shift($get) : config::get("router.default_method", 'index');
         } elseif (loader::folderExist($get[0], 'controller')) {
             self::$folder = array_shift($get) . "/";
             self::set_request($get);
             return;
         } else {
             throw new sfException(lang::get("Controller not find!"));
         }
         for ($i = 0, $n = count($get); $i < $n; $i += 2) {
             self::$get[$get[$i]] = $get[$i + 1];
         }
     } catch (sfException $e) {
         $e->halt();
     }
 }