thinkphp5.1封装基类控制器

Posted 2019ab

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp5.1封装基类控制器相关的知识,希望对你有一定的参考价值。

1.编写网络接口时,我们每次都要返回json格式的数据每次都要json_encode(),通常我们需要让所有控制器写一个公共的类。当然了我们也可以在common.php中写一个公共方法。这里我们就简单的写一个继承BaseController.php的方法。

在这里插入图片描述
这样我们就在文件下多出了,
在这里插入图片描述

2.接下来,我们就来编写BaseController.php这个文件,代码如下所示。

<?php

namespace app\\common\\controller;

use think\\Controller;
use think\\Request;

class BaseController extends Controller
{
    // api统一返回格式
   static public function showResCode($msg='未知',$data=[],$code=200)
   {
        $res = [
            'msg'=>$msg,
            'data'=>$data,
        ];
        return json($res,$code);
   }

   // api统一返回格式无数据
   static public function showResCodeWidthOutData($msg='未知',$data=[],$code=200)
   {
      return self::showResCode($msg,[],$code);
   }
} 

对的,你没看错就是这么简单。记得把生成的方法全删了写我整理好的方法。

3.接下来,就是需要继承我们的BaseController了。

在这里插入图片描述
重点都已经标注出来了,还有什么问题欢迎留言或私信我。谢谢大家观看。

以上是关于thinkphp5.1封装基类控制器的主要内容,如果未能解决你的问题,请参考以下文章

thinkphp5.1封装一个分页组件,tp5.1怎么封装分页组件

thinkphp5.1全局验证层封装

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装

PHP系列 | 代码复用trait的构造函数使用