thinkphp学习04-控制器定义

控制器,即 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);
}

在这里插入图片描述

相关推荐

  1. thinkphp控制器调用脚本

    2024-01-07 15:32:01       53 阅读
  2. Thinkphp 5框架学习

    2024-01-07 15:32:01       62 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-07 15:32:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-07 15:32:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-07 15:32:01       87 阅读
  4. Python语言-面向对象

    2024-01-07 15:32:01       96 阅读

热门阅读

  1. Decontam与SCRUB:安装与使用

    2024-01-07 15:32:01       68 阅读
  2. 【网络工程师】交换机的VLAN与Trunk

    2024-01-07 15:32:01       59 阅读
  3. Redis小计(3)

    2024-01-07 15:32:01       48 阅读
  4. LeetCode //C - 933. Number of Recent Calls

    2024-01-07 15:32:01       57 阅读
  5. python&Matplotlib六:Matplotlib的图例和注释功能

    2024-01-07 15:32:01       60 阅读
  6. tf特征处理常用函数

    2024-01-07 15:32:01       61 阅读
  7. 前端要学哪些

    2024-01-07 15:32:01       58 阅读
  8. 浏览器渲染原理(面试重点)

    2024-01-07 15:32:01       53 阅读
  9. leetcode:32.有效的字母异位词

    2024-01-07 15:32:01       60 阅读