php curl编码类型设置、文件上传与接收数据

2024-05-02 13:48

本文主要是介绍php curl编码类型设置、文件上传与接收数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
http://www.jb51.net/article/48185.htm

如果设定content-type(CURLOPT_HTTPHEADER,curl_setopt ,curl_setopt_array),按照设定;如果没有设定,curl自动添加(multipart/form-data 或 application/x-www-form-urlencoded)。

2、http-关于application/x-www-form-urlencoded等字符编码的解释说明
http://blog.csdn.net/klarclm/article/details/7711021

3、PHP 使用 curl 提交 json 格式数据
http://www.cnblogs.com/caly/archive/2013/04/11/3013980.html

4、浅谈php表单提交中enctype属性
http://blog.csdn.net/freshlover/article/details/8603648

5、PHP输入流php://input介绍
http://www.jb51.net/article/31317.htm


$data='{"content":"kg9Ho+wf8bpNTPsqRUFbGifivt81fXk2dTiVTVgotKjI2Uv1b9Vq\/HwydVQu2+LM"}';$this->_options[CURLOPT_POSTFIELDS] = $data;

curl设置了 ‘Content-Type’ => ‘text/plain’ 头,post的数据为json串,可以用file_get_contents(‘php://input’) 获取数据 ,
$_GET、$_POST为空。file_get_contents(‘php://input’) 获取的数据:

string ‘{“content”:”kg9Ho+wf8bpNTPsqRUFbGifivt81fXk2dTiVTVgotKjI2Uv1b9Vq\/HwydVQu2+LM”}’
(length=79)

curl没有设置头,post的数据为json串,(会自动添加application/x-www-form-urlencoded),可以用file_get_contents(‘php://input’) 获取数据,$_GET为空, $_POST的内容:

array (size=1)
‘{“content”:”kg9Ho_wf8bpNTPsqRUFbGifivt81fXk2dTiVTVgotKjI2Uv1b9Vq\/HwydVQu2_LM”}’ => string ” (length=0)

file_get_contents(‘php://input’) 获取的数据:

  string '{"content":"kg9Ho+wf8bpNTPsqRUFbGifivt81fXk2dTiVTVgotKjI2Uv1b9Vq\/HwydVQu2+LM"}'  (length=79)

6、curl含有上传文件

$file = realpath(ltrim($item, '@'));
$item = new CURLFile($file);
$item->setPostFilename($filename);$data['dataFile']=$item;//$data数组中还有其他数据$this->_options[CURLOPT_POSTFIELDS] = $data;curl_setopt_array($this->_curl, $this->_options);
curl_exec($this->_curl);

new CURLFile

会自动设置content-type : multipart/form-data ; boundary=————————70c909cf0943e42f。如果同时设置了content-type : multipart/form-data头,会自动添加boundary标识。

多个文件同时上传时$data格式:
这里写图片描述

这篇关于php curl编码类型设置、文件上传与接收数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/954390

相关文章

input的accept属性让文件上传安全高效

《input的accept属性让文件上传安全高效》文章介绍了HTML的input文件上传`accept`属性在文件上传校验中的重要性和优势,通过使用`accept`属性,可以减少前端JavaScrip... 目录前言那个悄悄毁掉你上传体验的“常见写法”改变一切的 html 小特性:accept真正的魔法:让

idea设置快捷键风格方式

《idea设置快捷键风格方式》在IntelliJIDEA中设置快捷键风格,打开IDEA,进入设置页面,选择Keymap,从Keymaps下拉列表中选择或复制想要的快捷键风格,点击Apply和OK即可使... 目录idea设www.chinasem.cn置快捷键风格按照以下步骤进行总结idea设置快捷键pyth

MyBatis配置文件中最常用的设置

《MyBatis配置文件中最常用的设置》文章主要介绍了MyBatis配置的优化方法,包括引用外部的properties配置文件、配置外置以实现环境解耦、配置文件中最常用的6个核心设置以及三种常用的Ma... 目录MyBATis配置优化mybatis的配置中引用外部的propertis配置文件⚠️ 注意事项X

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param

C# WebAPI的几种返回类型方式

《C#WebAPI的几种返回类型方式》本文主要介绍了C#WebAPI的几种返回类型方式,包括直接返回指定类型、返回IActionResult实例和返回ActionResult,文中通过示例代码介绍的... 目录创建 Controller 和 Model 类在 Action 中返回 指定类型在 Action

Java JAR 启动内存参数配置指南(从基础设置到性能优化)

《JavaJAR启动内存参数配置指南(从基础设置到性能优化)》在启动Java可执行JAR文件时,合理配置JVM内存参数是保障应用稳定性和性能的关键,本文将系统讲解如何通过命令行参数、环境变量等方式... 目录一、核心内存参数详解1.1 堆内存配置1.2 元空间配置(MetASPace)1.3 线程栈配置1.

C#借助Spire.XLS for .NET实现Excel工作表自动化样式设置

《C#借助Spire.XLSfor.NET实现Excel工作表自动化样式设置》作为C#开发者,我们经常需要处理Excel文件,本文将深入探讨如何利用C#代码,借助强大的Spire.XLSfor.N... 目录为什么需要自动化工作表样式使用 Spire.XLS for .NET 实现工作表整体样式设置样式配置

java对接Pinata上传文件到IPFS全过程

《java对接Pinata上传文件到IPFS全过程》本文详细介绍了如何使用PinataAPI将文件上传到IPFS网络,首先登录Pinata官网并生成JWT令牌,然后在项目中导入OkHttp依赖并编写代... 目录1.登录2.生成令牌3.导入依赖4.编写代码5.调用接口调试China编程代码总结Pinata调用AP

python中的鸭子类型详解

《python中的鸭子类型详解》鸭子类型是Python动态类型系统的灵魂,它通过强调“行为”而非“类型”,赋予了代码极大的灵活性和表现力,本文给大家详细介绍python中的鸭子类型,感兴趣的朋友一起看... 目录1. 核心思想:什么是鸭子类型?2. 与“传统”静态类型语言的对比3. python 中无处不在

Java枚举类型深度详解

《Java枚举类型深度详解》Java的枚举类型(enum)是一种强大的工具,它不仅可以让你的代码更简洁、可读,而且通过类型安全、常量集合、方法重写和接口实现等特性,使得枚举在很多场景下都非常有用,本文... 目录前言1. enum关键字的使用:定义枚举类型什么是枚举类型?如何定义枚举类型?使用枚举类型:2.