实现代码如下
<?php
$route['/user/(\d+).html'] = function ($args) {
print_r($args);
echo '我是前台用户页面额';
};
$route['/'] = function ($args) {
print_r($args);
echo '我是前台网站首页';
};
$action = explode('&', $_SERVER['QUERY_STRING']);
$action = empty($action[0]) || $_SERVER['QUERY_STRING'][0] != '/' ? '/' : $action[0];
$route_keys = array_keys($route);
$flag = false;
foreach ($route_keys as $route_key) {
preg_match('#^' . $route_key . '$#is', $action, $all);
if (!empty($all)) {
$route[$route_key]($all);
$flag = true;
break;
}
}
if (false === $flag) {
echo '页面被程序猿吃了...';
}
假设这个文件放在网站根目录,并且url进行了如下重写:
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
</IfModule>
那么现在访问 http://localhost/
, http://localhost
显示出来的内容都是
Array
(
[0] => /
)
我是前台网站首页
访问 http://localhost/user-123.html
显示出来的内容是
Array
(
[0] => /user/12.html
[1] => 12
)
我是前台用户页面额