路由


路由的使用非常简单,无需配置即可快速上手,具体可以查看config/route.php

'MODULE' => 'index',
'CONTROLLER' => 'index',
'METHODS' => 'main'


其中默认模块和控制器都是index默认方法是main


自定义路由

如果你已经有了一个URL https://www.xxx.com/index/download,如果你想要更短,你可以在配置文件中进行修改

'ROUTE' => [
    'download' => ['index', 'download'],
    'news' => ['index', 'blog', 'news']
]


这样你的URL就变成了 https://www.xxx.com/download

配置文件代表你的 /download的请求会被映射到 /index/download中

这不会影响到你URL中的GET参数,比如 https://www.xxx.com/download/id/1 和 https://www.xxx.com/index/download/id/1 是一样的


COOLPHP框架模块设计

COOLPHP框架也采用了类似ThinkPHP框架的灵活模块设计,默认采用多模块的架构,并且支持单一模块设计,所有模块的命名空间均以app作为根命名空间(可配在config/routing.php配置更改)

注意开启多模块设计时common是框架的公共模块目录,是不能在路由url中直接访问的,框架会提示模块不存在


多模块设计

'APP_MULTI_MODULE' => true

├─app                   应用目录
│  ├─common             公共模块目录(可选)
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录(可选)
│  │  └─view            视图目录(可选)
│  ├─admin              后台模块目录(例如)
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录(可选)
│  │  └─view            视图目录(可选)
│  ├─index              前台模块目录(例如)
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录(可选)
│  │  └─view            视图目录(可选)
│  ├─api                API模块目录(例如)
│  │  ├─controller      控制器目录
│  │  └─model           模型目录(可选)
│  ├─ ...               更多类库目录


单模块设计

'APP_MULTI_MODULE' => false

├─app                   应用目录
│  ├─controller         控制器目录
│  ├─model              模型目录(可选)
│  └─view               视图目录(可选)