我想在php中构建一个mvc框架,但是我想要url就像page1 / sub-page-1 / sub-page-sub-page-1 /如何做到这一点?因为通常如果构建MVC框架,url就像控制器/动作/参数一样?
所以,如果我有一个名为blog的页面,还有一个名为blog的控制器,这些页面与每个页面都没有冲突。
答案 0 :(得分:4)
我认为您应该使用包含类似内容的.htaccess将所有流量重定向到index.php:
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
在index.php之后,你必须解析URL,从这开始:
$url = $_SERVER["REQUEST_URI"];
make explodes,parseUrl,...
答案 1 :(得分:0)
您需要自己生成并管理这些网址。如果您使用Apache,您可以在您的.htaccess文件中建立重写规则,以便modrewrite将每个请求重定向到index.php,因此解析index.php中的url包括应该运行的代码。
您可以查看JOOMLA源代码,特别是JRoute类。