限时 5折! 详情

yii2源码分析-请求

4773 0 0

今天我们来谈一谈yii2对请求的封装处理 —— request 组件。

在yii2中,用request组件来处理应用的请求。诸如请求参数,请求头,cookie等都与之有不解的关系。

request组件,如无特殊说明,本文以及后面要介绍的request组件指的就是 yii\web\Request ,这是一个核心组件。

我们可以用 Yii::$app->request 或者 Yii::$app->get('request') 来获取request实例对象。

yii\web\Request 的结构如下

class Request extends \yii\base\Request
{
}
abstract class Request extends \yii\base\Component
{
}

可以看出,request 组件的整体结构并不复杂,当然,这只是表面现象。

为什么这么说呢?

后期涉及到路由、cookie等问题你就发现问题了。

我们准备从几个小问题来看一看request组件的实现。

  1. 如何获取请求参数?
  2. 如何获取请求头?
  3. 如何获取cookie?
  4. cookie的加密又是怎么回事?

首先第一个问题,我们知道,在php中,可以使用全局数组 $_

继续阅读

还有90%的精彩内容,购买继续阅读