6.6 Curl使用说明
优质
小牛编辑
133浏览
2023-12-01
DoitPHP扩展类Curl,用于常用的Curl操作。如:模拟浏览器抓取某网址的网页内容,以及post数据请求。
类方法使用说明:
1、get($url, $data = array(), $proxy = null, $expire = 30)
用CURL模拟获取网页页面内容。支持静态调用。
参数说明:
$url : 所要获取内容的网址
$data : 所要提交的数据
$proxy : 代理设置
$expire : 时间限制
2、post($url, $data = array(), $proxy = null, $expire = 30)
用CURL模拟提交数据。支持静态调用。
参数说明:
$url : post所要提交的网址
$data : 所要提交的数据
$proxy : 代理设置
$expire : 所用的时间限制
3、setUserAgent($userAgent)
设置浏览器的AGENT信息。
参数说明:
$userAgent : 浏览器的AGENT信息
4、setCookieFile($filePath)
设置cookie的存贮文件路径。
参数说明:
$filePath : 存贮cookie的文件路径
5、setCookieStatus($isTurnOn = true)
设置cookie功能是否开启。
参数说明:
$isTurnOn : 是否开启
举例说明:
例一、获取某网址页面内容
Controller文件代码内容如下:
public function indexAction() {
$html = Curl::get('http://www.google.com');
echo $html;
}
例二、POST提交模拟登录
Controller文件代码内容如下:
public function indexAction() {
$params = array(
'user_name' => 'doitphp',
'password' => '5201314'
);
$content = Curl::post('http://提交登陆网址', $params);
}
例三、高级应用
Controller文件代码如下:
public function indexAction() {
$filePath = CACHE_PATH . '/temp/curl_cookie.txt';
$userAgent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:49.0) Firefox/49.0';
$params = array(
'user_name' => 'doitphp',
'password' => '5201314'
);
$curlObj = $this->instance('Curl');
$content = $curlObj->setUserAgent( $userAgent)
->setCookieFile($filePath)->setCookieStatus()
->post('http://提交网址', $params);
}