欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

如何解决curl php post 丢失问题

程序员文章站 2022-03-13 08:58:23
...

php curl post数据丢失是因为在string类型中,&符号是在分割参数用的,所以会导致丢失情况,其解决办法就是使用Array的方式提交即可。

如何解决curl php post 丢失问题

本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑

如何解决curl php post 丢失问题?

关于PHP Curl POST 数据丢失的问题

$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
$return = curl_exec ( $ch );
curl_close ( $ch );

$data参数有两种类型:string/array

比如:我们想提交两个数据

$title =  '我是标题';
$content = '<a href="http://www.baidu.com?a=1&b=1">点我百度一下</a>';

当类型为string的时候

$data = 'title=这是标题&content=<a href="http://www.baidu.com?a=1&b=1">点我百度一下</a>';

提交后我们会发现$_POST['content']并没有出现我们想要的<a href="http://www.baidu.com?a=1&b=1">点我百度一下</a>,而是出现了<a href="http://www.baidu.com?a=1

这是因为在string类型中,&在分割参数用的,所以我们打印结果会出现

Array(
[title] => 我是标题
[content] => <a href="http://www.baidu.com?a=1
[b] => 1">点我百度一下</a>
)

这时我们只要使用Array的方式提交就没有问题了

推荐学习:《PHP视频教程

以上就是如何解决curl php post 丢失问题的详细内容,更多请关注其它相关文章!

相关标签: php post