11月29日:thinkphp框架->请求

news2025/1/15 17:27:15

回忆上节知识点

        thinkphp官方文档解释

        Rest控制器:主要是对资源进行控制,在thinkphp6.0开始废弃,推荐使用资源控制器

        Rest控制器使用符合RESTFul风格,RESTFul方法和标准模式的操作方法定义主要区别在于,需要对请求类型和资源类型进行判断,大多数情况下,通过路由定义可以把操作方法绑定到某个请求类型和资源类型。

 请求信息:其中尤为重要的

$request = Request::instance();
        //获取当前域名
echo "domain:".$request->domain()."<br>";

输入变量:

概述

可以通过Request对象完成全局输入变量的检测、获取和安全过滤,支持包括$_GET$_POST$_REQUEST$_SERVER$_SESSION$_COOKIE$_ENV等系统变量,以及文件上传信息。

其中$_REQUEST是$_GET和$_POST的结合体

可使用has方法检测变量是否设置(推荐使用助手函数)

//has():检测变量是否设置
$request = Request::instance();
echo "变量是否设置:".$request->has("id",'get');
input('?get.id');//input()助手函数

变量获取:

input('get.'):其中get.代表的意思是获取当前get请求的所有变量

更改变量(不常用)

        通常不会对已设置的变量进行更改,可直接设置变量为你想要的变量值

请求类型

//请求类型
        // 是否为 GET 请求
        if (Request::instance()->isGet()) echo "当前为 GET 请求";
        // 是否为 Ajax 请求
        if (Request::instance()->isAjax()) echo "当前为 Ajax 请求";
        // 是否为 cgi
        if (Request::instance()->isCgi()) echo "当前为 cgi"; //cgi代表浏览器访问
        // 是否为 cli
        if (Request::instance()->isCli()) echo "当前为 cli";   //cli代表在命令行窗口下进行访问
// 是否为手机访问
if (Request::instance()->isMobile()) echo "当前为手机访问";
判断是否为手机访问

 请求伪装(很少使用)

支持请求类型伪装,可以在POST表单里面提交_method变量,传入需要伪装的请求类型,例

<form method="post" action="">
    <input type="text" name="name" value="Hello">
    <input type="hidden" name="_method" value="PUT">    //hidden表示隐藏域,是不会显示dom结构中,默认自动提交
    <input type="submit" value="提交">
</form>

 HTTP头信息

访问网站,请求头中含有的信息 

 伪静态:

当前处于动态网页发展时代,使用伪静态将动态网页伪装成静态网页,方便爬虫在爬取时进行爬取,以用来提高搜索的高匹配度

 方法注入,属性注入,参数绑定在后续开发中很少使用

依赖注入

依赖注入,你可以分开理解。拆成,依赖和注入依赖:当前你需要调用request对象的get方法,所以你必须要先能得到request对象,然后才能使用这个方法。这个就是依赖。注入:怎么得到request对象呢?一种是你直接$request=new Request()可以得到,这种也称为主动获取,还有一种就是把整个对象当做一个参数传进来,类型你这样的写法,然后去使用。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/45059.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux圈子里的“鲁大师“dmidecode-尚文网络xUP楠哥

~~全文共1189字&#xff0c;阅读需约5分钟。 进Q群11372462&#xff0c;领取专属报名福利&#xff0c;包含云计算学习路线图代表性实战训练大厂云计算面试题资料! Linux系统内核中有这样一个叫做DMI的东东&#xff0c;英文全称是Desktop Management Interface&#xff0c;翻译…

Ubutun搭建集群遇到的一些问题

安装部署K8s集群时会遇到很多问题&#xff0c;以下都是我踩过的坑&#xff0c;还有一些小坑当时没来得及记录&#xff0c;后续如果有遇到的话再进行补充。此处非常感谢江城琉璃梦同学对我的帮助。 1.工作节点执行kubectl get nodes时拒绝连接 执行指令&#xff1a;kubectl ge…

管理最忌讳用权管人

阅读本文大概需要 1.66 分钟。最近星球在更新一些系列课程&#xff0c;其中有一节课叫「怎样从技术人转型管理者&#xff1f;」应该很适合大多读者&#xff0c;毕竟关注我的读者里&#xff0c;做技术做管理的居多&#xff0c;所以这篇也发这里给大家分享下。程序员做技术的&…

网络结点中心性

结点中心性 node centrality 被认为是度量网络结点重要性的重要指标 常用的结点中心性有以下五种&#xff1a; &#xff08;以下各中心的概念在不同地方的定义可能不同&#xff0c;实际计算应查看使用工具的具体实现&#xff09; 1、度中心性 degree centrality 常被直接称为…

使用SPSSAU进行Roc联合诊断

1.基本思想 在一些医学临床研究中&#xff0c;有很多影响因素&#xff08;或者指标&#xff09;会对诊断起着作用。比如‘低出生体重儿’的出生&#xff0c;受到产妇年龄&#xff0c;产妇体重&#xff0c;产妇在妊娠期间是否吸烟&#xff0c;是否患有高血压共4项指标的影响。 …

一种高选择性和灵敏的荧光生物标记物,可用于标记碱性磷酸酶 (ALP),5-FAM-Alkyne,510758-19-7,荧光生物标记物

【中文名称】5-羧基荧光素-炔烃【英文名称】 FAM alkyne,5-isomer&#xff0c;5-FAM alkyne【结 构 式】 【CAS号】510758-19-7 【分子式】C24H15NO6【分子量】413.39【基团】炔基基团【纯度】95%【规格标准】5mg&#xff0c;10mg&#xff0c;25mg&#xff0c;包装灵活&#x…

LeetCode - 76 最小覆盖子串

目录 题目来源 题目描述 示例 提示 题目解析 算法源码 题目来源 76. 最小覆盖子串 - 力扣&#xff08;LeetCode&#xff09; 题目描述 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串&#xff0c;则返回…

基于java+springboot+mybatis+vue+elementui的会议管理系统

项目介绍 随着社会竞争压力的不断加强 &#xff0c;企事业单位内部的会议都在不断的增加&#xff0c;有效的会议可以提高企事业内部的沟通&#xff0c;更好的做出符合战略目标的决策。但是当下会议的交接工作一直是通过人们口头传达的方式来进行的&#xff0c;很明显这种方式比…

NLP文章和视频违规声明原创案例集锦

一、 文章违规声明原创案例集锦 平台鼓励用户就自行创作并发布的作品标识原创,但作品本身应符合以下前提: 1、受著作权法保护(如公开性质内容不具备著作权,则不在原创范围内) 2、不得侵犯他人权益(如未经授权使用他人内容,则不在原创范围内) 3、符合平台运营规范(…

C++利器STL——vector详解

要努力&#xff0c;但不要着急&#xff0c;繁花锦簇&#xff0c;硕果累累都需要过程&#xff01; 目录 1.vector的介绍及使用 1.1vector的介绍 1.2vector的使用 2.vector模拟实现 3.vector常见试题 1.vector的介绍及使用 1.1vector的介绍 1. vector是表示可变大小数组的序列容…

从查询语句执行流程看MySQL架构

言 常言道&#xff0c;看待一个事情要先知全貌&#xff0c;从高维度认识、理解&#xff0c;然后再深入各个细节&#xff0c;一一击破。MySQL的学习也不例外&#xff0c;那么你知道一条SQL在MySQL中执行要经历哪些步骤吗&#xff1f;每个步骤都有MySQL的哪些“零件”参与吗&…

双十二薅羊毛!这几款数码好物不可错过

双十二即将开始&#xff0c;在这段时间里有的人已经将自己心仪的塞满了整个购物车了吧&#xff0c;而有的人还没想好到底要入手什么&#xff0c;如果你也是还在纠结的话&#xff0c;不知道该买什么又或是想知道哪些产品更适合你入手&#xff0c;不妨来看看小编今天为你带来的这…

【JavaScript函数】

JavaScript函数1 本节目标2 函数的概念3 函数的使用3.1 声明函数3.2 调用函数3.3 函数的封装4 函数的参数4.1 形参和实参4.2 执行过程4.3 注意点4.4 函数形参和实参个数不匹配问题5 函数的返回值5.1 return语句5.2 函数返回值注意事项5.3 break,continue,return的区别6 argumen…

Python 中的安全密码处理

前言 几乎每个应用程序都需要某种形式的身份验证、密码处理或使用安全凭据&#xff0c;例如 API 密钥。您可能不是安全专家&#xff0c;但您应该知道如何安全地处理所有这些密码和凭据&#xff0c;以保护应用程序用户的凭据和数据以及您自己的 API 密钥和各种令牌。 &#xf…

GitHub 最全的开发资源汇总系列

GitHub 最全的开发资源汇总系列 了解学习开发各种项目&#xff01;&#xff01;&#xff01; GitHub 最全的开发资源汇总系列 由伯乐在线持续更新 Java 资源大全&#xff1b;Java资源大全中文版&#xff0c;包括开发库、开发工具、网站、博客、微信、微博等。 —— Java资源…

建筑结构抗震分析之施加地震波的方法与理论机理

一、地震波的输入有三种方式&#xff1a; 第一种是是质量加速度施加法&#xff0c;通过达朗贝尔原理&#xff0c;将地震作用转化为施加在质点上惯性力&#xff1b;第二种是底部位移法&#xff0c;在结构底部直接输入位移地震波&#xff0c;模拟地面震动反应&#xff0c;计算结…

Function 源码解析与实践

作者&#xff1a;陈昌浩 1 导读 if…else…在代码中经常使用&#xff0c;听说可以通过 Java 8 的 Function 接口来消灭 if…else…&#xff01;Function 接口是什么&#xff1f;如果通过 Function 接口接口消灭 if…else…呢&#xff1f;让我们一起来探索一下吧。 2 Functio…

共享新机遇 共谋新发展 | 蓝海创意云携元宇宙技术参展2022昆明南博会

11月19日&#xff0c;第6届中国-南亚博览会暨第26届中国昆明进出口商品交易会&#xff08;以下简称南博会&#xff09;在昆明盛大开幕&#xff0c;经过10年的精心打造&#xff0c;南博会已经成为集国际贸易、投资洽谈、文化交流等为一体的高水平综合性国际博览会。 蓝海创意云…

草料二维码表单如何推送至工作群

在我们使用草料二维码进行隐患排查、故障报修、预约报名、巡检异常等场景时&#xff0c;需要时不时查看草料后台&#xff0c;检查是否有新的信息更新&#xff0c;或者提交后人工再单独通知一次&#xff0c;经常造成信息传递不及时&#xff0c;那么能不能当有表单提交时&#xf…

项目管理软件有哪些,哪个好用?

做过项目的朋友肯定都知道&#xff0c;项目管理软件是专门用来帮助计划和控制项目资源、成本与进度的计算机应用程序。这类软件可以帮助企业管理项目进度&#xff0c;节省项目人力成本支出&#xff0c;增进团队协作与沟通&#xff0c;提升团队成员工作效率&#xff0c;让资源可…