您的位置:首页 > 其它

phalcon: (非官方)简单的多模块

2016-09-18 22:30 246 查看
phalcon: 【非官方】多模块

配合router使用

例如:我的模块叫做: home

入口文件增加引入:

use Phalcon\Mvc\Router;


  

在自动引入前面增加,自动引入命名空间:

/**
* 注册命名空间
*/
$loader->registerNamespaces(array(
'controllers' => '../app/controllers'
))->register();

$loader->registerDirs(
array(
'../app/controllers/',
'../app/models/'
)
)->register();


  

增加router规则:

//router
$di['router'] = function()	{
$router = new Router();
$router->add("/home/?([a-zA-Z0-9_-]*)/?([a-zA-Z0-9_]*)/:params",
array(
"namespace" => 'controllers\home',
"controller" => 1,
"action" => 2,
"params" => 3,
));

$router->add("/index/:params",
array(
"namespace" => 'controllers\home',
"controller" => 'index',
"action" => 'index',
"params" => 1,
)
);

$router->setDefaults(array(
"namespace" => 'controllers\home',
"controller" => "Index",
"action" => "index"
));

return $router;
};


  

第二步:在你home的controller文件夹下,都要定义命名空间

如:IndexController

<?php

namespace controllers\home;

use Phalcon\Mvc\Controller;

class IndexController extends Controller
{

public function indexAction()
{
echo "gaga";
$this->view->pick('home/index');
}

}


  

目录结构如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: