首先讲一下根目录下每个目录的作用
· -app : 存放控制器文件和视图文件
--ctrl – 存放indexCtrl.php控制文件
--views – 存放index.html视图文件
· -roce : 存放自动加载类文件和视图路由文件
--lib – 存放model.php模型文件和route路由文件
--imooc.php –自动加载类文件
· - index.php :入口文件
· - .htaccess :隐藏index.php文件
建立入口文件:
在入口文件内index.php中主要有
/**
* 1.定义常量
* 2.加载函数库
* 3.启动框架
*/
在入口文件内定义所有的全局变量
//获取框架当前所在的目录
define('IMOOC',realpath('./'));
//设置一个核心文件
define('CORE',IMOOC.'/roce');
//设置一个项目文件
define('APP',IMOOC.'/app');
//定义一个模块
define('MODULE','app');
//设置一个调试模式
define('DEBUG',true);
//判断是否开启
if (DEBUG)
{
ini_set('display_error','On');
}
else
{
ini_set('display_error','Off');
}
而后通过spl_autoload_register()函数实现类自动加载功能
//加载函数库
include CORE."/imooc.php";
//调用自动加载;
spl_autoload_register('\roce\imooc::load');
//调用基础类run方法
\roce\imooc::run();
代码整合
<?php /** * 入口文件 * 1.定义常量 * 2.加载函数库 * 3.启动框架 */ header('content-type:text/html;charset=utf-8;'); //获取框架当前所在的目录 define('IMOOC',realpath('./')); //设置一个核心文件 define('CORE',IMOOC.'/roce'); //设置一个项目文件 define('APP',IMOOC.'/app'); //定义一个模块 define('MODULE','app'); //设置一个调试模式 define('DEBUG',true); //判断是否开启 if (DEBUG) { ini_set('display_error','On'); } else { ini_set('display_error','Off'); } //加载函数库 include CORE."/imooc.php"; //调用自动加载; spl_autoload_register('\roce\imooc::load'); //调用基础类run方法 \roce\imooc::run(); ?>
建立文件 .htaccess文件
代码整合
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteRule ^(.*)$ index.php/$1 [L]