{
$control = !empty($_GET['c']) ? trim($_GET['c']) : ' ';
$action = !empty($_GET['a']) ? trim($_GET['a']) : ' ';
}
else if($C['URL_MODE'] == 2) //如果为 2 那么就是使用 PATH_INFO 模式,
也就是 url
地址是这样的
http://localhost/index.php/控制器/方法/其他
参
数
{
if(isset($_SERVER['PATH_INFO']))
{
//$_SERVER['PATH_INFO']URL 地址中文件名后的路径信息, 不好理解, 来看
看
例
子
// 比 如 你 现 在 的 URL
是 http://www.php100.com/index.php 那 么 你 的
$_SERVER['PATH_INFO']
就
是
空
的
// 但 是 如 果 URL
是
http://www.php100.com/index.php/abc/123
//现在的$_SERVER['PATH_INFO']
的值将会是 index.php 文件名称后的内容
/abc/123/
$path
=
trim($_SERVER['PATH_INFO'],
'/');
$paths
=
explode('/',
$path);
$control
=
array_shift($paths);
$action
=
array_shift($paths);
}
}
上 面 的 代 码 从 url 地 址 中 获 取 了 控 制 器 和 方 法
// 这 里 判 断 控 制 器 的 值 是 否 为 空 ,
如 果 是 空 的 使 用 默 认 的
$_GET['c'] = $control = !empty($control) ? $control :
$C['DEFAULT_CONTROL'];
//
和
上
面
一
样
$_GET['a'] = $action = !empty($action) ? $action :
$C['DEFAULT_ACTION'];
}
}
?>
注释写的很清楚, 这里我就不多说了, 做到这, 你就可以建立一个 Controller
目 录 , 然 后 在 目 录 中 建 立 welcome.class.php
文 件
写
入
如
下
内
容
<?php
class
Welcome
{
public
function
index()
{
s
echo
'Hello';
}
}
?>
允
许
程
序
你
将
会
看
到
Hello
然
后
在
写
一
个
方
法