我有一个Phalcon项目设置,我有一个多个Controller目录的工作实现。我当前的目录结构很简单,如下所示:
/controllers
/admin
ControllerBase.php
IndexController.php
AuthController.php
ControllerBase.php
IndexController.php
为了实现这一点,我注册了两个命名空间:
$loader->registerNamespaces(
array(
'App\Controllers' => APP_PATH .'/controllers/',
'App\Controllers\Admin' => APP_PATH .'/controllers/admin/',
...
));
虽然这有效,但在创建具有多个目录的大型应用程序时会出现以下两个问题:
我遇到的主要问题是#2,似乎无论我尝试什么,我都不能将/admin/IndexController.php继承自/ControllerBase.php。它只允许我继承/admin/ControllerBase.php。
答案 0 :(得分:0)
因为它似乎有效:
我有多个名称空间(多个路径)和许多控制器(有或没有名称空间),它们从一个ControllerBase
(没有名称空间)继承。所以它是可行的。
至于PHP能够加载你的课程,你应该只能有一个ControllerBase
。