curlpost请求包含数组参数
场景描述:使⽤curl⽅法,post请求接⼝,参数中包含数组格式的值,⼜不想把数组转换成json,这时候就需要对curl⽅法做⼀点点改动了。
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post_data)); // 这⾥是关键,把数组参数做⼀步转换
curl⽅法post⼀个数组
$r = $this->curl_post($url, $data);
$list = json_decode($r,true);
function curl_post($url = '', $post_data = array())
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
//以⽂件流的形式返回,⽽不直接输出
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// post数据curl命令发送post请求带参数
curl_setopt($ch, CURLOPT_POST, 1);
// post的变量
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post_data)); // 这⾥是关键,把数组参数做⼀步转换
$output = curl_exec($ch);
curl_close($ch);
//打印获得的数据
//return $output;
return trim(str_replace("\r\n", "", $output));
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。