程序入口自动调用 controller 的方法

/* *DS :常量 DIRECTORY_SEPARATOR,表示路径分隔符 在win里为/ ,在linux 里为/ *CONTROLLERS_PATH:contorller主目录 *SCRIPT_NAME:contorller主目录下的子目录 */ function action() { args_addslashes(); //act:controller中的路径参数 user.user_login。用"."分隔 //当cat没有值的时候,调用默认的"main"主contrller的"main"主方法。 if (empty($_GET['act']) || !preg_match("/^([a-z0-9]+)/.([a-z0-9]+_?(([a-z0-9]+)_?)*[a-z0-9]+)$/i", $_GET['act'], $arr)) { $arr[0] = SCRIPT_NAME . '.main'; $arr[1] = SCRIPT_NAME; $arr[2] = 'main'; } $GLOBALS['cout']['act'] = $arr;//将路径赋值给全局变量 $tmp = CONTROLLERS_PATH . SCRIPT_NAME . DS . $arr[1] . '.con.php';//加载controller文件 if(is_file($tmp))//执行controller方法 { include($tmp); if(method_exists($arr[1],$arr[2])) { $f = new $arr[1]; $f->$arr[2](); } } }

你可能感兴趣的:(程序入口自动调用 controller 的方法)