观看下载地址
http://www.imooc.com/learn/696
http://www.imooc.com/learn/69
一目录结构
2-1 -- 2-3总结注意命名规范及标点的使用,易出现错误
主要就是定义一个入口文件
入口文件定义全局的常量
这样那我们就可以得到url的值
http://www.imooc.com/learn/696
http://www.imooc.com/learn/69
一目录结构
2-1 -- 2-3总结注意命名规范及标点的使用,易出现错误
主要就是定义一个入口文件
入口文件定义全局的常量
define('IMOCC',realpath('./'));
define('CORE','/core');
define('APP','/app');
define('MODULE','app');
define('DEBUG',true);
加载函数库
include CORE.'/common/function.php';
2-2自动加载:建立路由,加载路由
咱们new一个类是如果不存在会触发这个方法
spl_autoload_register('\core\imocc::load');
2-3路由类
建立lib文件夹将route放入lib文件夹这样做是为了规范代码
1.隐藏index.php
2.获取URL 参数部分
3.返回对应控制器和方法
比如我输入的是xxx.com/index/index
咱们访问的就是xxx.com/index.php/index
在根目录下建立.htaccess
建立一个隐藏index.php的方法
内容如下
<IfModule mod_rewrite.c>
RewriteEngine On
# 确保请求路径不是一个文件名或目录
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# 重定向所有请求到 index.php?url=PATHNAME
RewriteRule ^(.*)$ index.php?url=$1 [PT,L]
</IfModule>
获取URL地址
$path=$_SERVER['REQUEST_URI'];
分割得到参数
$patharr=explode('/',trim($path,'/'));
如果只输入一个index要进行判断
if(isset($patharr[0])){
$this->ctrl=$patharr[0];
}
if(isset($patharr[1])){
$this->action=$patharr[1];
}else{
$this->action='index';
}
url多余部分转换为get
www.xx.com/
$count=count($patharr)+2;
$i=2;
while($i<$count){
if(isset($patharr[$i+1])){
$_GET[$patharr[$i]]=$patharr[$i+1];
}
$i=$i+2;
}
unset($_GET['url']);
这样那我们就可以得到url的值
后续将持续更新