php curl中post与get应用实例代码

发布时间:2020-12-29编辑:脚本学堂
curl中使用post与get实例代码,有需要的朋友,可以参考下。

curl post与get实例代码。

复制代码 代码示例:

<?php
/**
 * curl get post示例
 * site http://www.jb200.com
*/
function curl_post_contents($url, $data = array(), $cookiepath = '',$timeout=10){
   $userAgent = 'Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1)';
   $referer = $url;
   if(!is_array($data) || !$url) return '';
   $post = '';
   foreach($data as $key => $value){
       $post .= $key . '=' . urlencode($value) . '&';
   }
   rtrim($post, '&');
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $url);      //设置访问的url地址
   curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);   //设置超时
   curl_setopt($ch, CURLOPT_USERAGENT, $userAgent); //用户访问代理 User-Agent
   curl_setopt($ch, CURLOPT_REFERER, $referer);   //设置 referer
   curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);   //跟踪301
   curl_setopt($ch, CURLOPT_POST, 1);       //指定post数据
   curl_setopt($ch, CURLOPT_POSTFIELDS, $post);   //添加变量
   curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiepath); //COOKIE的存储路径,返回时保存COOKIE的路径
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);   //返回结果
   $content = curl_exec($ch);
   curl_close($ch);
   return $content;
}
 
function curl_get_contents($url, $timeout = 5)
{
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $url);
   curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
   curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)');

   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   @curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, true);
   curl_setopt($ch, CURLOPT_DNS_CACHE_TIMEOUT, 86400); // 缓存一天
   $content = curl_exec($ch);
   curl_close($ch);
   return $content;
}
?>