tp5项目改造 - 2 (接口基类)

作者:yiqiu,最后更新时间:2020-03-26 12:05,访问:1569

原文:http://www.upwqy.com/details/247.html



在应用目录 application 下 创建common/controller 目录



创建文件 RestBase.php   为接口基类 



代码如下


<?php

namespace app\common\controller;

use think\Config;
use think\Request;


class RestBase
{
   protected $request;
   protected $limit;
   protected $page;//分页页码
   /**
    * 架构函数
    * @param Request $request Request对象
    * @access public
    */
   public function __construct(Request $request = null)
   {

       if (is_null($request)) {
           $request = Request::instance();
       }
       Request::instance()->root('/');
       $this->request = $request;

       $this->limit = input('limit',10);
       $this->page = input('page',1);

       //初始化配置
       $this->initConfig();
       // 控制器初始化
       $this->initialize();
   }

   // 初始化
   protected function initialize()
   {
   }


   public function initConfig(){
       trace($this->request->param(),'trace_result');


       $model = $this->request->module();

       $config = [
           'app_debug'=>false,
           'default_return_type'=>'json',
           'exception_handle'=>'app\lib\exception\ExceptionHandler',
           'show_error_msg'=>true,
           'log'=>[
               'path'=>RUNTIME_PATH.$model.DS.'log'.DS,
               'level'=>['error','sql','trace_result']
           ]
       ];
       Config::set($config);

   }


   /**
    * 获取当前的response 输出类型
    * @access protected
    * @return string
    */
   protected function getResponseType()
   {
       return 'json';
   }

}



其中 limit  为 默认需要分页的接口 所用到的 分页展示的数据  page  为分页页码


其中 initConfig 中 

'app_debug'=>false,
'default_return_type'=>'json',
'exception_handle'=>'app\lib\exception\ExceptionHandler',


为设置全局异常处理器   

其中  app\lib\exception\ExceptionHandler

为  tp5项目改造 - 1 (接口全局异常处理) 中创建的异常处理器




上一篇: layuiadmin 路由
下一篇: tp5项目改造 - 1 (接口全局异常处理)