POST请求:其中的Exception需要引用
/**
* @param $url 地址
* @param array $param 数组参数
* @return bool|string
* post请求
*/
function curl_post($url, $param=array()){
if(!is_array($param)){
throw new Exception("参数必须为array");
}
$httph =curl_init($url);
//不验证SSL
curl_setopt($httph, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($httph, CURLOPT_SSL_VERIFYHOST, 0);
//设置获取的信息以文件流的形式返回,而不是直接输出
curl_setopt($httph, CURLOPT_RETURNTRANSFER,1);
curl_setopt($httph, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");
//设置为POST方式
curl_setopt($httph, CURLOPT_POST, 1);
// 设置post请求参数
curl_setopt($httph, CURLOPT_POSTFIELDS, $param);
// 可以拿到请求头信息
curl_setopt($httph, CURLOPT_HEADER,0);
$rst=curl_exec($httph);
curl_close($httph);
return $rst;
}
GET请求:Exception同样需要引用
/**
* @param $url 地址
* @param array $param 数组参数
* @return bool|string
* get请求
*/
function curl_get($url, $param=array()){
if(!is_array($param)){
throw new Exception("参数必须为array");
}
$p='';
foreach($param as $key => $value){
$p=$p.$key.'='.$value.'&';
}
if(preg_match('/\?[\d\D]+/',$url)){//matched ?c
$p='&'.$p;
}else if(preg_match('/\?$/',$url)){//matched ?$
$p=$p;
}else{
$p='?'.$p;
}
$p=preg_replace('/&$/','',$p);
$url=$url.$p;
//echo $url;
$httph =curl_init($url);
//不验证SSL
curl_setopt($httph, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($httph, CURLOPT_SSL_VERIFYHOST, 0);
//设置获取的信息以文件流的形式返回,而不是直接输出
curl_setopt($httph, CURLOPT_RETURNTRANSFER,1);
curl_setopt($httph, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");
// 可以拿到请求头信息
curl_setopt($httph, CURLOPT_HEADER,0);
$rst=curl_exec($httph);
curl_close($httph);
return $rst;
}
(做的笔记,只是自己看的)