20,359
社区成员
发帖
与我相关
我的任务
分享
$ch = curl_init('http://....');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$c=curl_exec($ch);
$arr=explode('<!--ppd_content-->',$c);
preg_match_all('|Set-Cookie: (.*);|U', $c, $results);
foreach($results[1] as $ck)
{
$u=explode('=',$ck);
if(!empty($u[0]) and !empty($u[1]) and $u[1]!='deleted')
{
setcookie($u[0],rawurldecode($u[1]),0,'/','.brothersoft.com');
}
}
echo $arr[1];
curl_close($ch);
if($this->_iscookie==false){//获取cookie存入本机cookie
preg_match_all('|Set-Cookie: (.*);|U', $this->_source, $results);
$cookies = implode(';', $results[1]);
setcookie("cookname", $cookies, time()+3600*24*7,"/");
}
function curlFetch($url, $cookie = "", $referer = "", $data = null)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 返回字符串,而非直接输出
curl_setopt($ch, CURLOPT_HEADER, false); // 不返回header部分
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120); // 设置socket连接超时时间
if (!empty($referer))
{
curl_setopt($ch, CURLOPT_REFERER, $referer); // 设置引用网址
}
if (!empty($cookie))
{
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie); // 设置从$cookie所指文件中读取cookie信息以发送
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie); // 设置将返回的cookie保存到$cookie所指文件
}
if (is_null($data))
{
// GET
}
else if (is_string($data))
{
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// POST
}
else if (is_array($data))
{
// POST
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
}
set_time_limit(120); // 设置自己服务器超时时间
$str = curl_exec($ch);
curl_close($ch);
return $str;