background image

<?php
 
//1.初始化,创建一个新 cURL 资源
 
$ch = curl_init();
 
//2.设置 URL 和相应的选项
 
curl_setopt($ch, CURLOPT_URL, "http://www.lampbrother.net/");
 
curl_setopt($ch, CURLOPT_HEADER, 0);
 
//3.抓取 URL 并把它传递给浏览器
 
curl_exec($ch);
 
//4.关闭 cURL 资源,并且释放系统资源
 
curl_close($ch);
 
?>

上述四步中,其中第二步最为关键,可以设置一些高级选项:

例如上例中的 CURLOPT_URL 和 CURLOPT_HEADER

,分别代表 需要获取的 URL 地

” “

址 和 启用时会将头文件的信息作为数据流输出 ,这些只是冰山一角,我们还可以设置
很多选项:

选项

可选 value 值

备注

CURLOPT_AUTOREFERER

当 根 据 Location: 重 定 向 时 , 自 动 设 置

header 中的 Referer:信息。

 

CURLOPT_BINARYTRANSFE

R

在启用 CURLOPT_RETURNTRANSFER 的

时候,返回原生的(Raw)输出。

 

CURLOPT_COOKIESESSION

启 用 时 curl 会 仅 仅 传 递 一 个 session 

cookie , 忽 略 其 他 的 cookie , 默 认 状 况 下
cURL 会 将 所 有 的 cookie 返 回 给 服 务 端

session cookie 是指那些用来判断服务器端的
session 是否有效而存在的 cookie。

 

CURLOPT_CRLF

启用时将 Unix 的换行符转换成回车换行符。  

CURLOPT_DNS_USE_GLOBA

L_CACHE

启用时会启用一个全局的 DNS 缓存,此项

为线程安全的,并且默认启用。

 

CURLOPT_FAILONERROR

显示 HTTP 状态码,默认行为是忽略编号

小于等于 400 的 HTTP 信息。

 

CURLOPT_FILETIME

启用时会尝试修改远程文档中的信息。结果

信 息 会 通 过 curl_getinfo() 函 数 的
CURLINFO_FILETIME

选 项 返 回 。 

curl_getinfo().

 

CURLOPT_FOLLOWLOCATIO

启 用 时 会 将 服 务 器 服 务 器 返 回