1、判断是否有相应的类
首先我们在入口文件(index.php)进行判断
使用函数
<?php
/*入口文件
*定义常量
*加载函数库
*启动框架
*/
define('FRAMEWORK',dirname(__FILE__));
define('CORE',FRAMEWORK.'/core');//主要核心文件
define('APP',FRAMEWORK.'/app');//控制器模型文件
define('MODULE','app');
define('DEBUG',true);//调试模式
if (DEBUG){
ini_set('display_error','On');
} else {
ini_set('display_error','Off');
}
include CORE.'/common/function.php';//加载文件
include CORE.'/framework.php';//核心文件
//判断
spl_autoload_register('\core\framework::load');//判断类是否存在 若不存在就执行函数中相关的路径
\core\framework::run();//调用方法执行入口文件
?>
2
、因为不存在我们自动引用相关路径(
\core\framework::load
)framework.php中的load方法
public static $classMap = array();
static public function load($class)//我们会经常调用到所以设置为静态方法
{
//自动加载类库
if(isset(self::$classMap[$class])){
return true;
} else {
$class = str_replace('\\', '/', $class);//把\替换成/
$file = FRAMEWORK.'/'.$class.'.php';//我们需要把路径拼接成项目路径
if(is_file($file)){
include $file;
self::$classMap[$class] = $class;
} else {
return false;
}
}
}
3、在core文件夹下创建一个新的文件夹lib用于存放我们的配置文件建立我们的路由类
在core 下创建lib,lib 下建立route.php(路由类)
<?php
namespace core;
class route
{
public funtion __construct()
{
echo "route ok";
}
}
?>
4、在调用入口文件方法run()中 new 路由方法
$route = new\core\route();
print_r($route);
5、成功输出
route ok