900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > php curl模拟post请求和提交多维数组的示例代码【PHP】

php curl模拟post请求和提交多维数组的示例代码【PHP】

时间:2018-06-09 01:52:18

相关推荐

php curl模拟post请求和提交多维数组的示例代码【PHP】

后端开发|php教程

php_curl多维数组,curl_post多维

后端开发-php教程

下面一段代码给大家介绍php curl模拟post请求的示例代码,具体代码如下:

伟德28源码,mac u盘 ubuntu,tomcat服务器推送,爬虫做业务,php推送升级包,seo 专员lzw

anteng// password => password);$ch = curl_init ();// print_r($ch);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 );print_r($return);

积分兑换网站积分兑换源码,ubuntu安装系统驱动,爬虫抓取淘宝评价,php upload目录,云浮推广seolzw

2,远程服务器:

时时彩 手机 源码,vscode中git的使用,ubuntu 16过热,远程访问tomcat失败,爬虫抓取bt,数据库批量导入 php,怎么提升博客排名seo教程,公司网站标题套图,xampp安装网站模板lzw

<?phpif(isset($_POST[ ame])){ if(!empty($_POST[ ame])){ echo 您好,,$_POST[ ame].!; }}

下面给大家介绍php中curl模拟post提交多维数组。

今天需要用curl模拟post提交参数,请求同事提供的一个接口;但是传递的参数中,有一个参数的值为数组,用普通的curl post代码提交,会报错误

PHP Notice: Array to string conversion in /test/functions.php on line 30

Notice: Array to string conversion in /test/functions.php on line 30

代码如下:

123, uids => array(12,455), msgType => WITH, ick => aaa, ); $url = "/t.php"; //通过curl的post方式发送接口请求 SendDataByCurl($url,$param); //通过curl模拟post的请求;function SendDataByCurl($url,$data=array()){ //对空格进行转义 $url = str_replace( ,+,$url); $ch = curl_init(); //设置选项,包括URL curl_setopt($ch, CURLOPT_URL, "$url"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch,CURLOPT_TIMEOUT,3); //定义超时3秒钟 // POST数据 curl_setopt($ch, CURLOPT_POST, 1); // 把post的变量加上 curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //执行并获取url地址的内容 $output = curl_exec($ch); //释放curl句柄 curl_close($ch); return $output;}

经过修改上面代码,可以完成提交数组的功能,而不会报php notice,代码如下:

//通过curl模拟post的请求;function SendDataByCurl($url,$data=array()){ //对空格进行转义 $url = str_replace( ,+,$url); $ch = curl_init(); //设置选项,包括URL curl_setopt($ch, CURLOPT_URL, "$url"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch,CURLOPT_TIMEOUT,3); //定义超时3秒钟 // POST数据 curl_setopt($ch, CURLOPT_POST, 1); // 把post的变量加上 curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); //所需传的数组用http_bulid_query()函数处理一下,就ok了 //执行并获取url地址的内容 $output = curl_exec($ch); $errorCode = curl_errno($ch); //释放curl句柄 curl_close($ch); if(0 !== $errorCode) { return false; } return $output;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。