7.31 基础知识

一  Basecontroller

. 它是一个抽象类 通过依赖注入的方式 加载了app对象

2. 分析$this->app->request 代码的执行

1. 我们打开app.php 发现里面没有request
2. 我们再打开app.php 继承的容器类 也没有request
3. 其实它走到了 __get() 当对象调用一个不存在的属性的时候会走这个方法
4. get方法里面调用了 make方法
5. make方法回去创建实例 这个容器的灵魂

3. 如何获取RUL请求参数

. $this->request->param()
. input

 

 

二 杜绝无效请求

https://coding.imooc.com/lesson/407.html#mid=31797 课程地址

1)方法不存在

1. 在Basecontroller中定义魔术方法
function __call(){
在这里处理逻辑
  如果是api的形式 就返回api格式的数据
  如果是模板引擎 就输出一个404错误页面
}

2)控制器不存在

在项目目录下新建  Error 类  

 

 

 

posted @ 2021-07-31 08:48  棉花糖88  阅读(20)  评论(0)    收藏  举报