Yii2中request的使用

yii2做了很多来处理request请求。这里做笔记记录一下。

1、普通的get和pst请求

$request = Yii::$app->request;

$get = $request->get(); 
// equivalent to: $get = $_GET;

$id = $request->get(‘id‘);   
// equivalent to: $id = isset($_GET[‘id‘]) ? $_GET[‘id‘] : null;

$id = $request->get(‘id‘, 1);   
// equivalent to: $id = isset($_GET[‘id‘]) ? $_GET[‘id‘] : 1;
//添加了默认值

$post = $request->post(); 
// equivalent to: $post = $_POST;

$name = $request->post(‘name‘);   
// equivalent to: $name = isset($_POST[‘name‘]) ? $_POST[‘name‘] : null;

$name = $request->post(‘name‘, ‘‘);   
// equivalent to: $name = isset($_POST[‘name‘]) ? $_POST[‘name‘] : ‘‘;
//添加了默认值

2、判断请求属性

$request = Yii::$app->request;

if ($request->isAjax) { // 判断是否为AJAX 请求 }
if ($request->isGet)  { // 判断是否为GET 请求 }
if ($request->isPost) { // 判断是否为POST 请求}
if ($request->isPut)  { // 判断是否为PUT 请求 }

3、获取请求头信息

// $headers is an object of yii\web\HeaderCollection 
$headers = Yii::$app->request->headers;
// 返回header头部所有信息

$accept = $headers->get(‘Accept‘);
if ($headers->has(‘User-Agent‘)) { // 获取User-Agent }

4、获取用户客户端信息

$userHost = Yii::$app->request->userHost; 
$userIP = Yii::$app->request->userIP;
时间: 2024-10-18 09:46:12

Yii2中request的使用的相关文章

【PHP】Yii2中事务的使用以及代码实例

Yii2中事务的使用以及代码实例 前言 一般我们做业务逻辑,都不会仅仅关联一个数据表,所以,会面临事务问题. 数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行. 事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源.通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠.一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性.一致性.隔

Yii2 学习笔记 01 -- 依赖注入在yii2中的应用

什么是依赖注入?                  依赖注入(Dependency Injection)是设计模式的一种.名字比较抽象,但是,要解决的问题却是比较明确.对于给定的应用程序,需要借助一些相对独立的组件来完成功能.一般来说,使用这些组件的过程就包含在应用程序的逻辑语句之中.问题是,当这些组件想要做成类似插件功能,以达到应用程序的业务逻辑不变就能随意的更改组件的实现的效果.这种灵活性取决于应用程序如何组装这些组件.如果说应用程序依赖于这些组件的话,依赖注入就是把这些依赖关系从应用程序的

Yii2中的模块、应用程序(Module,Application)

原文地址:http://www.kuitao8.com/20140626/2715.shtml 模块(Module ) 模块是一个功能独立的逻辑单元,每一个模块都可以包含有多个子模块,但每个模块只能有一个对应的父模块(如果有的话).它的定义在yii\base\Module 应用程序(Application) Yii2中的应用程序有两种:web应用程序(yii\web\Application)和控制台应用程序(yii\console\Application).他们都继承于yii\base\Appl

Yii2中多表关联查询(with、join、joinwith)

表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order         (id  order_name   customer_id   book_id) 图书表Book          (id  book_name    author_id) 作者表Author        (id  author_name) 模型定义 下面是这4个个模型的定义,只写出其中的关联 Customer class Customer ex

yii2中的资源....

1.模板文件中访问view和controller,view : $this,controller :$this->context 模板文件显示流程: 1.控制器会在render中,把控制器本身,模板文件传给view 2.呈现模板文件,首先view会查找主题,主题如果拥有模板文件,则优先使用主题内模板文件.并将模板文件赋值给变量$content 3.呈现布局文件,同样查找主题,并将$content作为变量导入 4.引入模板文件时,是发生在view中,所以$this就是view 2.注册资源 reg

yii2中添加验证码的实现方法

本文实例讲述了yii2中添加验证码的实现方法.分享给大家供大家参考,具体如下: 首先,在模型中添加验证码字段: ? 1 2 3 public function rules(){ return ['verifyCode', 'captcha'], } 其次,可以在函数attributeLabels中添加前台页面中验证码的字段名称: ? 1 2 3 public function atrributeLabels(){ return ['verifyCode'=>'Verification Code'

Yii2中多表关联查询(join、joinwith) with是不执行sql的

Yii2中多表关联查询(join.joinwith) 我们用实例来说明这一部分 表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer (id customer_name) 订单表Order (id order_name customer_id book_id) 图书表 (id book_name author_id) 作者表 (id author_name) 模型定义 下面是这4个个模型的定义,只写出其中的关联 Customer class Customer extends \

Yii2中多表关联查询(join、joinwith)

我们用实例来说明这一部分 表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order          (id  order_name       customer_id   book_id) 图书表                    (id  book_name       author_id) 作者表                    (id  author_name) 模型定义 下面是这4个个模型的定义,只写

关于jsp中request请求乱码问题

其实在写web项目的时候最怕的就是出现乱码,有时候很微小的错误可能要找很久,伤神费力.这就要求我们在编程的时候尽量要规范严谨.废话不多说,今天在写jsp的时候又出现了乱码.四处求解,在书上最后找到了答案.在提交表单的时候,如果是中文表单,难免要出现字符集不匹配出现的乱码,这时就要对这个进行编码设置.对于jsp中request这个内置对象,设置编码是这样的:<%requset.setCharactorEncoding("utf-8");%>,其实书上使用的是gb2312这个编