当前位置:Gxlcms > PHP教程 > php使用curl的post方法字符串和数组传值的区别

php使用curl的post方法字符串和数组传值的区别

时间:2021-07-01 10:21:17 帮助过:16人阅读

最近在工作中需要请求第三方的一个java版的接口,起初是使用数组进行传参,代码写完之后发现接口死活调试不通,总是提示传参为空,纠结了很久之后,决定尝试使用字符串传参的方式来请求接口,没想到这次居然调试成功了,这让我有了研究这两者究竟有何区别的兴趣。

本地的测试代码如下:
curl.php

functioncurl_post($url, $data){$ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, $url);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($ch, CURLOPT_POST, 1);
     curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
     $output = curl_exec($ch);
     curl_close($ch);
     return$output;
}

$params = array();
$params['username'] = 'ben';
$params['password'] = 'lalala';
print_r(curl_post('http://localhost/curl/post.php', $params));

$params = array();
$params['username'] = urlencode('ben');
$params['password'] = urlencode('lalala');
$paramsStr = "username={$params['username']}&password={$params['password']}";
print_r(curl_post('http://localhost/curl/post.php', $paramsStr));

?>

post.php

echo"-------php://input-----
"
; var_dump(@file_get_contents('php://input')); echo"-------post-----
"
; var_dump($_POST); echo"-------server-----
"
; var_dump($_SERVER);

执行结果可以参照如下截图:
php使用curl的post方法字符串和数组传值的区别

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
  • ').text(i)); }; $numbering.fadeIn(1700); }); });

    版权声明:本文为博主原创文章,转载请注明出处和作者名,尊重别人也是尊重自己

    以上就介绍了php使用curl的post方法字符串和数组传值的区别,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

  • 人气教程排行