Curl使用说明

DoitPHP扩展类Curl,用于常用的CURL操作。

类方法使用说明

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文件代码内容如下:

  1. public function indexAction() {
  2.  
  3. $html = Curl::get('http://ip-api.com');
  4.  
  5. echo $html;
  6. }

例二、POST提交模拟登录

Controller文件代码内容如下:

  1. public function indexAction() {
  2.  
  3. $params = array(
  4. 'user_name' => 'doitphp',
  5. 'password' => '5201314'
  6. );
  7.  
  8. $content = Curl::post('http://提交网址', $params);
  9. }

例三、高级应用

Controller文件代码如下:

  1. public function indexAction() {
  2.  
  3. $filePath = CACHE_PATH . '/temp/curl_cookie.txt';
  4.  
  5. $userAgent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:49.0) Firefox/49.0';
  6.  
  7. $params = array(
  8. 'user_name' => 'doitphp',
  9. 'password' => '5201314'
  10. );
  11.  
  12. $curlObj = $this->instance('Curl');
  13.  
  14. $content = $curlObj->setUserAgent( $userAgent)
  15. ->setCookieFile($filePath)->setCookieStatus()
  16. ->post('http://提交网址', $params);
  17. }

原文: http://www.doitphp.com/index/documentation/?articleid=33