在PHP中想要构造类似GET和POST请求,在一些APP或者等后端功能开发中是有这种需求。
在PHP语言当中有file_get_content ()
函数和curl
的支持。
在PHP>5.3 的版本中默认两者都是开启的。
直接写代码了,就不再叙述,有需要的朋友直接Ctrl+C+Ctrl+V即可
<?php
function httpGET($target_url, $get_data = array()){
$result = @file_get_content($target_url.'/?'.http_build_query($get_data));
return $result;
}
/*
* 方法2
*/
function httpGET2($target_url, $get_data = array()){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $target_url.'/?'.http_build_query($get_data));
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($curl);
curl_close($curl);
return $data;
}
?>
POST请求没法儿使用file_get_content ()函数来实现,所以只有使用curl方法来实现
<?php
function httpPOST($url , $post_data = array()){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post_data));
$response = curl_exec($curl);
curl_close($curl);
return $response;
}
?>
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。