控制器,即 controller,控制器文件存放在 controller 目录下;
如果想改变系统默认的控制器文件目录,可以在 config 下 route.php 配置:
将controller修改为controller123,就会报错,说明这个配置是起作用的
类名和文件名大小写保持一致,并采用驼峰式(首字母大写)
默认控制器和默认方法
controller下新建Test.php
<?php
namespace app\controller;
//首字母大写
class Test
{
public function index()
{
return "Test";
}
public function hello($value = '')
{
return "Hello " . $value;
}
}
访问的URL不区分大小写
那么如果创建的是双字母组合,比如 class HelloWorld,访问 URL 如下:
http://localhost/tp6test3/public/helloworld
http://localhost/tp6test3/public/hello_world
如果你想避免引入同类名时的冲突,可以 route.php 设置控制器后缀:
'controller_suffix' => true,
此时,Test.php 就必须改成 TestController.php,并类名也需要增加后缀;
渲染输出
默认的return即可渲染输出,可以返回json,直接采用 json 函数;
$data = array('a'=>1, 'b'=>2, 'c'=>3);
return json($data);
public function index()
{
$data =['a'=>1,'b'=>2,'c'=>3];
return json($data);
}
不推荐使用 die、exit 等 PHP 方法中断代码执行,推荐助手函数 halt();
public function index()
{
$data =['a'=>1,'b'=>2,'c'=>3];
halt("停止返回数据,打印\$data ".print_r($data,true));
return json($data);
}