Yii框架通过请求组件处理get,post请求的方法分析


Posted in PHP onSeptember 03, 2019

本文实例讲述了Yii框架通过请求组件处理get,post请求的方法。分享给大家供大家参考,具体如下:

在控制器的操作中处理get,post请求时,首先需要获得请求组件。

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

得到这个请求组件后,我们就可以通过请求组件获得参数了。

//通过get获取参数
$id = $request->get("id");
//通过post获取参数
$id = $request->post("id");

在Yii框架中,我们不仅可以获取参数,还可以设置默认值,如果传参中没有这个参数,则会返回默认值。

//为get,post两种方法设置默认参数10
$id = $request->get("id",10);
$id = $request->post("id",10);

这时如果访问http://basic/web/index.php?r=index/say?num=20时,因为参数中并没有id,$id会获取默认值10。

在这个$request组件中,还提供了基本的判断等,比如判断请求的方式。

if($request->isGet){
  echo "this is Get";
}else if ($request->isPost){
  echo "this is Post";
}

如果请求时Get方式,就会打印出

this is Get

如果是Post,则会输出

this is Post

通过请求组件还可以获取用户的ip地址等信息,这里以IP地址为例

$user_ip = $request->userIP;

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP实现分页的一个示例
Oct 09 PHP
PHP中的正规表达式(二)
Oct 09 PHP
PHP 内存缓存加速功能memcached安装与用法
Sep 03 PHP
PHP判断表单复选框选中状态完整例子
Jun 24 PHP
php中$_GET与$_POST过滤sql注入的方法
Nov 03 PHP
分享50个提高PHP执行效率的技巧
Dec 26 PHP
ThinkPHP的常用配置选项汇总
Mar 24 PHP
SAE实时日志接口SDK用法示例
Oct 09 PHP
php 数组元素快速去重
May 05 PHP
thinkphp5框架扩展redis类方法示例
May 06 PHP
tp5递归 无限级分类详解
Oct 18 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 PHP
laravel 配置路由 api和web定义的路由的区别详解
Sep 03 #PHP
解决laravel 出现ajax请求419(unknown status)的问题
Sep 03 #PHP
解决Laravel blade模板转义html标签的问题
Sep 03 #PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
Sep 03 #PHP
php中钩子(hook)的原理与简单应用demo示例
Sep 03 #PHP
php根据地址获取百度地图经纬度的实例方法
Sep 03 #PHP
Laravel使用Queue队列的技巧汇总
Sep 02 #PHP
You might like
PHP源代码数组统计count分析
2011/08/02 PHP
php cookie使用方法学习笔记分享
2013/11/07 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
2014/07/08 PHP
typecho插件编写教程(二):写一个新插件
2015/05/28 PHP
php实现获取农历(阴历)、节日、节气的类与用法示例
2017/11/20 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
2019/10/15 PHP
jquery中ajax学习笔记一
2011/10/16 Javascript
基于jquery的固定表头和列头的代码
2012/05/03 Javascript
商城常用滚动的焦点图效果代码简单实用
2013/03/28 Javascript
Js日期选择器并自动加入到输入框中示例代码
2013/08/02 Javascript
[将免费进行到底]在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
2014/08/18 Javascript
举例讲解如何判断JavaScript中对象的类型
2016/04/22 Javascript
去除html代码里面的script正则方法
2016/05/19 Javascript
jQuery Easyui使用(一)之可折叠面板的布局手风琴菜单
2016/08/17 Javascript
解析利用javascript如何判断一个数为素数
2016/12/08 Javascript
解析JavaScript数组方法reduce
2016/12/12 Javascript
Angular使用ng-messages与PHP进行表单数据验证
2016/12/28 Javascript
Vue.js鼠标悬浮更换图片功能
2017/05/17 Javascript
详解Angular 4.x NgIf 的用法
2017/05/22 Javascript
Vue.js项目模板搭建图文教程
2017/09/20 Javascript
Vue入门之animate过渡动画效果
2018/04/08 Javascript
vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法
2019/11/05 Javascript
Angular处理未可知异常错误的方法详解
2021/01/17 Javascript
[03:56]显微镜下的DOTA2第十一期——鬼畜的死亡先知播音员
2014/06/23 DOTA
在Python中使用sort()方法进行排序的简单教程
2015/05/21 Python
Python实现根据IP地址和子网掩码算出网段的方法
2015/07/30 Python
Python的Flask框架的简介和安装方法
2015/11/13 Python
Python制作Windows系统服务
2017/03/25 Python
Python基于socket模块实现UDP通信功能示例
2018/04/10 Python
python处理大日志文件
2019/07/23 Python
浅析PEP570新语法: 只接受位置参数
2019/10/15 Python
CSS3 Media Queries详细介绍和使用实例
2014/05/08 HTML / CSS
九年级政治教学反思
2014/02/06 职场文书
生日宴会主持词
2014/03/20 职场文书
向国旗敬礼活动总结范文2014
2014/09/27 职场文书
关于感恩的素材句子(38句)
2019/11/11 职场文书