位置: 编程技术 - 正文

PHP使用curl函数发送Post请求的注意事项(php curl file_get_contents)

编辑:rootadmin

推荐整理分享PHP使用curl函数发送Post请求的注意事项(php curl file_get_contents),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php curl命令详解,php curl_exec,php curl_exec,php curlfile,php curl_multi_init,php curl_setopt,php curl函数,php curl函数,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

前几天在工作中遇到了一个需求,当用户点击了某个按钮以后,后台发起一个post请求到我这里,我接受传递过来的数据。一开始同事是用公司框架公共封装的http_request()方法进行发送的,代码如下:

一开始我并没有留意传递过来的数据是application/json编码的json字符串,我在后台直接用接受application/x-www-form-urlencoded编码格式的数据方式来取传递过来的数据(就是直接用的$_POST方式获取的),结果当然没什么也没有取到了。后来,同事直接改了http_request()方法,直接传递application/x-www-form-urlencoded编码格式的数据过来,我这就没有做更改。

对于上面的问题,我一直纳闷当时为什么没有拿到传递过来的数据。

今天项目基本完工,研究了以下。

php中的curl()函数进行post请求的时候,传递数据的格式可以有以下几种方式:

(1):由参数拼接而成的key=>value键值对字符串。形如以下: name=xxx&age=$sex=1

这种请求参数默认是按照application/x-www-form-urlencoded进行编码的。

PHP使用curl函数发送Post请求的注意事项(php curl file_get_contents)

(2):由参数组成的key=>value键值对数组(只能是一维数组,更高维度的数组会报错)。

形如以下格式:

这种请求参数默认是按照multipart/form-data格式进行编码的。

上面说了,curl()进行post请求的时候,只能传递一维数组作为传递的参数,那么如果想要传递多维数组需要怎么处理那?

有两种方式可以来处理,分别是下面的方式3以及方式4。

(3):将多维数组进行http_build_query()进行处理,等到一个key=>value键值对格式的字符串。

如下面所示:

将得到以下的字符串:

这种方式也是通过application/x-www-form-urlencoded进行编码的,在接收方可以通过$_POST直接获取。

(4):将多维数组转换为json格式的字符串,对字符串进行application/json格式编码,在接收方通过file_get_contents(“

php连接微软MSSQL(sql server)完全攻略 在研究ezSQL的时候就看到了mssql_connect()等一些php提供的连接MSSQL的函数,本以为php这个开源的风靡世界的编程语言对连接微软的数据应该是不在话下的,

PHP中的use关键字及文件的加载详解 前言可能在大家经常使用框架,写一个Controller或者Model的时候,写了好多use,但是并没有写文件加载的代码,就以为use可以进行文件的自动加载了。详

jQuery+php简单实现全选删除的方法 本文实例讲述了jQuery+php简单实现全选删除的方法。分享给大家供大家参考,具体如下:inputtype="checkbox"id="ckb_selectAll"onclick="selectAll()"title="选中/取消选中

标签: php curl file_get_contents

本文链接地址:https://www.jiuchutong.com/biancheng/297222.html 转载请保留说明!

上一篇:laravel创建类似ThinPHP中functions.php的全局函数(laravel创建model)

下一篇:php连接微软MSSQL(sql server)完全攻略(php如何连接sql server)

  • 支付税金怎么算
  • 什么叫差额征税呢
  • 不动产租赁可以加计扣除吗
  • 购买土地自建厂房,土地怎样摊销
  • 建账的主要流程
  • 应付账款坏账了怎么处理
  • 广告公司属于服务企业吗
  • 购买金蝶软件多少钱
  • 科目余额表一定要编吗
  • 转让金融商品的会计分录
  • 房地产开发企业资质证书
  • 工程发票是不是都要异地预缴
  • 估价入账固定资产实际入账时补提折旧吗?
  • 票据遗失情况说明格式及范文
  • 进项发票已经抵扣怎么做退回处理
  • 工程预缴税款几个点
  • 广告宣传费扣除标准30%是什么?
  • 残保金逾期未申报的税务怎么处理
  • 公司向个人转账分录
  • 专项应付款与补助的区别
  • 关闭系统保留空间
  • 小规模纳税人取得防伪税控系统普通发票
  • 代扣代缴的增值税可以作为进项税抵扣吗
  • 表彰比例如何确定
  • 表单提交错误后怎么撤销
  • 苹果6s自动清理
  • 社保挂靠会计处理
  • 先开票后发货开票时确认收入
  • sfx.exe
  • 除了正式发票还有啥
  • wamp环境搭建的过程
  • 现金日记账怎么记账
  • 洛阿雷城堡,西班牙韦斯卡 (© Sebastian Wasek/Alamy)
  • 克拉克湖国家公园
  • 一文教会你何为重绘、回流?
  • 小规模纳税人的个人所得税怎么算
  • 外经证逾期未核销
  • 预算凭证可以单张打印吗
  • 帝国cms自定义列表
  • python 进程管理
  • mysql union or
  • api接口安全措施
  • 卷票要盖发票专用章吗?
  • 企业购进生产设备的会计分录
  • 申报个税工资报少了怎么更改
  • Mysql数据库备份库命令
  • 外地职工的界定
  • 提高资产利用率的例子
  • 政府补助的范围
  • 企业跨年度的收入退回应该如何进行会计处理?
  • 购进商品的运费计入什么科目
  • 2023年职工养老保险缴费标准
  • 质量问题扣货款会计怎么处理
  • 农业合作社销售农产品怎样纳税
  • 小规模纳税人建筑服务预缴增值税
  • 成本类科目会计处理分录
  • 研发一个月多少钱
  • 探讨探讨
  • sqlmap 提权
  • win8 无线网络连不上
  • Windows Server 2008搭建终端服务器
  • ubuntu注册用户
  • bios里怎么找不到usb启动
  • slee81.exe - slee81是什么进程
  • linux无法登陆
  • nodejs formidable
  • error C2258: illegal pure syntax, must be '= 0'
  • unity3d怎么样
  • three.js入门教程(合集)
  • 为什么使用json传输数据
  • shell 1
  • jquery实现div左右移动
  • node.js的express
  • python中如何获取列表中位数
  • javascript有几种类型
  • dom4j解析xml字符串步骤
  • express后端
  • 安徽增值税普通发票税率1%
  • 青岛新农合咨询电话
  • 审计现金盘点表怎么填
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设