一、控制器是什么?基本功能是什么?
1. 控制器其实就是一个类
2.功能:接受参数->处理数据->返回结果
二、控制器默认命名空间与修改方法
1. 命名空间: app\模块名\controller;
2. app: 系统中默认的针对应用的根命名空间,可以在.env中进行设置
3. APP_NAMESPACE = application
4. .env文件必须放在应用根目录下(与应用目录同级)
5. controller: 并不是控制器目录名称,本质上是:可访问控制器
实例:将系统可访问控制器设置为api
(1)修改config/app.php:
// 默认的访问控制器层
'url_controller_layer' => 'api',
(2)在index模块中创建api目录,创建Index控制器类和index()方法
<?php
namespace app\index\api;
class Index
{
public function index()
{
return '<h3>我是api访问控制器中的Index控制器中的test()';
}
}
(3)访问: tp51.io/index.php/index/index/index,将会自动访问我们自定义的控制器层
6. 除了默认控制器层可重定义外,默认控制器与默认方法与可以重定义
(1)修改app.php中的配置项
// 默认控制器名
'default_controller' => 'User',
// 默认操作名
'default_action' => 'list',
(2)在api/创建User.php
<?php
namespace app\index\api;
class User
{
public function list()
{
return '<h2>我是api控制器层中的User控制器中的list()操作';
}
}
三、控制器中渲染输出问题
1.全部采用return 返回
2.可返回两种类型的数据html(默认),json
'default_return_type' => 'html',
'default_return_type' => 'json',