【发布时间】:2014-04-16 16:59:51
【问题描述】:
我是 PHP 新手,我已经成功地创建了一个 非常 粗略的 CMS。目前,它正在使用许多不同的页面和包含。
但是,如果可能的话,我想使用一个控制器而不是拥有 很多 个页面(我已经有了 article.php/admin.php)。
作为一个例子,我试图转换成这样的东西:
switch ( 'admin' ) {
case 'home':
include 'view/home.php';
break;
case 'admin':
include 'view/admin.php';
break;
case 'article':
include 'view/article.php';
break;
default:
echo 'default';
break;
}
这将与 $_GET['page'] 一起使用,因此管理 URL 看起来像:http://cms.dev/?page=admin
但是,如果我需要转到 admin 的子目录会怎样?例如,如果这些是硬编码页面,我会选择admin/new-post.php。使用$_GET method,我能得到一个等价物吗?
抱歉,如果没有很好地解释这一点。让我知道,我会尝试编辑它。我已经使用了大量的教程,所以我不是 100% 的。
【问题讨论】:
-
当你想使用前端控制器时。一切都应该从前端控制器调用,而不是导航到其他地方。
-
查看本教程link
mvc。 -
这更适合路由器,而不是控制器。但此代码将始终包含 view/admin.php,因为您打开的是字符串而不是变量。
标签: php url-routing front-controller