一、引入和实例化:

如果要获取当前的请求信息,可以使用\think\Request类

1、实例化:$request = Request::instance();

2、函数:$request = request();

3、方法中实例化:public function 方法名(Request $request){            }

4、函数助手 input

input('?get.id');

input('?post.name');

二、获取举例

1、获取URL信息

$request = Request::instance();
// 获取当前域名
echo 'domain: ' . $request->domain() . '<br/>';
// 获取当前入口文件
echo 'file: ' . $request->baseFile() . '<br/>';
// 获取当前URL地址 不含域名
echo 'url: ' . $request->url() . '<br/>';
// 获取包含域名的完整URL地址
echo 'url with domain: ' . $request->url(true) . '<br/>';
// 获取当前URL地址 不含QUERY_STRING
echo 'url without query: ' . $request->baseUrl() . '<br/>';
// 获取URL访问的ROOT地址
echo 'root:' . $request->root() . '<br/>';
// 获取URL访问的ROOT地址
echo 'root with domain: ' . $request->root(true) . '<br/>';
// 获取URL地址中的PATH_INFO信息
echo 'pathinfo: ' . $request->pathinfo() . '<br/>';
// 获取URL地址中的PATH_INFO信息 不含后缀
echo 'pathinfo: ' . $request->path() . '<br/>';
// 获取URL地址中的后缀信息

echo 'ext: ' . $request->ext() . '<br/>';

2、设置/获取 模块/控制器/操作名称

$request = Request::instance();
echo "当前模块名称是" . $request->module();
echo "当前控制器名称是" . $request->controller();

echo "当前操作名称是" . $request->action();

3、获取请求参数

$request = Request::instance();
echo '请求方法:' . $request->method() . '<br/>';
echo '资源类型:' . $request->type() . '<br/>';
echo '访问ip地址:' . $request->ip() . '<br/>';
echo '是否AJax请求:' . var_export($request->isAjax(), true) . '<br/>';
echo '请求参数:';
dump($request->param());
echo '请求参数:仅包含name';
dump($request->only(['name']));
echo '请求参数:排除name';

dump($request->except(['name']));

4、获取路由和调度信息

$request = Request::instance();
echo '路由信息:';
dump($request->route());
echo '调度信息:';

dump($request->dispatch());

5、设置请求信息

$request = Request::instance();
$request->root('index.php');

$request->pathinfo('index/index/hello');

6、变量获取

param 获取当前请求的变量
get 获取 $_GET 变量
post 获取 $_POST 变量
put 获取 PUT 变量
delete 获取 DELETE 变量
session 获取 $_SESSION 变量
cookie 获取 $_COOKIE 变量
request 获取 $_REQUEST 变量
server 获取 $_SERVER 变量
env 获取 $_ENV 变量
route 获取 路由(包括PATHINFO) 变量

file 获取 $_FILES 变量

三、变量修饰符

1、格式:

input('变量类型.变量名/修饰符');

Request::instance()->变量类型('变量名/修饰符');

2、类型:

s 强制转换为字符串类型
d 强制转换为整型类型
b 强制转换为布尔类型
a 强制转换为数组类型
f 强制转换为浮点类型

Tp5.0完全开发手册学习(第六章 请求)之一 (request 和input)相关推荐

  1. Tp5.0完全开发手册学习(第四章 路由)

    一.作用: 简化URL地址,方便记忆:有利于搜索引擎优化 二.模式: ThinkPHP5.0的路由比较灵活,并且不需要强制定义,可以总结归纳为如下三种方式: 普通模式.强制模式.混合模式 三.路由注册 ...

  2. Tp5.0完全开发手册学习(第八章 模型)

    一.模型->数据模型 模型会自动对应数据表,模型类的命名规则是除去表前缀的数据表名称,采用驼峰法命名,并且首字母大写. 模型同样支持初始化,与控制器的初始化不同的是,模型的初始化是重写Model ...

  3. thinkphp6手册_ThinkPHP6.0完全开发手册(官方版)

    php中文网最新课程 每日17点准时技术干货分享 为了让大家第一时间体验TP全新版本, PHP中文网(php.cn)更新了最全的<ThinkPHP6.0完全开发手册(官方版)>可供大家参考 ...

  4. php常用技术与thinkphp5,ThinkPHP5.0完全开发手册

    ThinkPHP5.0完全开发手册 ThinkPHP是一个免费开源的,快速.简单的面向对象的轻量级PHP开发框架,是为了敏捷WEB应用开发和简化企业应用开发而诞生的.ThinkPHP从诞生以来一直秉承 ...

  5. ThinkPHP5.0完全开发手册——调试模式

    调试模式 ThinkPHP有专门为开发过程而设置的调试模式,开启调试模式后,会牺牲一定的执行效率,但带来的方便和除错功能非常值得. 我们强烈建议ThinkPHP开发人员在开发阶段始终开启调试模式(直到 ...

  6. STM32固件库(标准外设库)入门学习 第六章TIM定时器(一)

    STM32固件库(标准外设库)入门学习 第六章TIM定时器(一) 文章目录 STM32固件库(标准外设库)入门学习 第六章TIM定时器(一) 前言 一.定时器类型 1 基本定时器 2 通用定时器 3 ...

  7. Java基础学习——第六章 面向对象编程(下)

    Java基础学习--第六章 面向对象编程(下) 一.关键词:static 1. static关键字的引入 当我们编写一个类时,其实就是在描述其对象的属性和行为,而并没有产生实质上的对象,只有通过new ...

  8. 阿里巴巴java开发手册学习

    本文对阿里巴巴java开发手册中需要注意的点予以记录 1.编程规约 类名中包含领域模型如DO/BO/DTO/VO时要 全部大写,如UserDTO. 抽象类要以Abstract或Base开头,异常类以E ...

  9. 【触动精灵】开发手册学习整理(一)

    简介 触动精灵采用 Lua 脚本语言作为底层语言,支持 Lua 5.2.3 版本的所有语法与基本函数,并在其基础上添加了一些扩展函数,用于实现取色.找色.找图.发送触摸事件等高级功能. Lua语言 L ...

  10. [翻译] 神经网络与深度学习 第六章 深度学习 - Chapter 6 Deep learning

    目录: 首页 译序 关于本书 关于习题和难题 第一章 利用神经网络识别手写数字 第二章 反向传播算法是如何工作的 第三章 提升神经网络学习的效果 第四章 可视化地证明神经网络可以计算任何函数 第五章 ...

最新文章

  1. 2014全国计算机二级ms office,2014计算机二级MS Office真题及答案
  2. dz论坛服务器技术支持,服务器更换 升级 dz论坛首页 dz其他页面打开为空白解决方法...
  3. 页表长度和页表大小_在请求调页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起( ) 。_学小易找答案...
  4. java exception e抛异常_Java-------异常处理try{}catch(){Exception e}finally{}
  5. 乐播投延迟很高_定投基金有变化
  6. jni直接转byte_JNI jbyteArray转char*
  7. 【Leetcode】数学题(Python)
  8. 免费下载380套大型商业源码
  9. obj模型 vue_Vue各种各样的模型库 Cornucopia 3D for Vue
  10. 矢量网络分析仪的基本原理
  11. 怎么设置腾讯云CDN缓存规则
  12. paypal ipn java_javashop中paypal使用指南
  13. 关于计算机的网络小说,“80后”从维熙:熟练电脑写作 关注网络文学
  14. Intellij idea -1-解决报错:Error executing Maven. The specified user settings file does not exist: C:\Use
  15. HTML中overflow的作用
  16. GD32E230 ADC注入通道
  17. 让我摘下星星送给你_抖音摘下星星给你是什么歌_抖音想摘下星星给你歌名是什么_好特教程...
  18. ADS1220的几种应用介绍(含源码)
  19. P8-从列表中移除多个元素
  20. java技术:输入拼音自动提示汉字的方法

热门文章

  1. java js 打开摄像头_js调用网络摄像头
  2. 智能摄像头如何防范被破解确保安全?
  3. 单片机pic的linux环境代替,pic单片机can总线协议收发编程
  4. MySql常用函数大全
  5. java从入门到精通pdf第五版,满满干货指导
  6. 细等线体cass_CASS打开图形出现字体替换怎么解决?
  7. Tableau Desktop 2021最新安装 + 破解教程
  8. 安装程序Repack攻略之MSI篇
  9. 《码出高效:Java开发手册
  10. Python 装逼手机号码方法 低配版 map方法解析