时间:2021-07-01 10:21:17 帮助过:12人阅读
php curl post数据丢失是因为在string类型中,&符号是在分割参数用的,所以会导致丢失情况,其解决办法就是使用Array的方式提交即可。
本文操作环境: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 丢失问题的详细内容,更多请关注gxlcms其它相关文章!