use CoreConfig;
use CoreRouter;
class Framework {
<code>public static function init() { require_once (__DIR__ . '/functions.php'); // 自动加载设置 spl_autoload_register('self::loadClass'); define("ROOT", getcwd()); define('APP', ROOT . '/' . Config::get('app.app_name')); // 设置时区 ini_set('date.timezone', Config::get('app.timezone')); $router = new Router(); // 加载路由设置 require_once (APP . '/routes.php'); $router->dispatch(); } public static function loadClass($className) { // linux上路径 $className = str_replace("\\", "/", $className); $filename = ROOT . "/" . $className . ".php"; if(is_file($filename)) require_once($filename); else throw new \Exception("$filename Is Not Found"); }</code>
}
然后我用str_replace函数替换,总感觉这样不是最好的方案
use CoreConfig;
use CoreRouter;
class Framework {
<code>public static function init() { require_once (__DIR__ . '/functions.php'); // 自动加载设置 spl_autoload_register('self::loadClass'); define("ROOT", getcwd()); define('APP', ROOT . '/' . Config::get('app.app_name')); // 设置时区 ini_set('date.timezone', Config::get('app.timezone')); $router = new Router(); // 加载路由设置 require_once (APP . '/routes.php'); $router->dispatch(); } public static function loadClass($className) { // linux上路径 $className = str_replace("\\", "/", $className); $filename = ROOT . "/" . $className . ".php"; if(is_file($filename)) require_once($filename); else throw new \Exception("$filename Is Not Found"); }</code>
}
然后我用str_replace函数替换,总感觉这样不是最好的方案
你的方法是对的,不过通常不是替换成/
,而是使用常量DIRECTORY_SEPARATOR
使用通用分隔符,DIRECTORY_SEPARATOR