日期:2014-05-17  浏览次数:20399 次

【捷哥浅谈PHP】第十六弹---文件传输工具cURL的高级应用
我们接着上文的内容来讲,上文给大家简单介绍了下使用curl的四个步骤,本文来给大家讲解下curl的一些高级应用:

获取请求的相关信息,我们可以在curl执行完成后利用curl_getinfo():
  1. <?php
  2. // 创建一个新cURL资源
  3. $ch = curl_init("http://www.lampbrother.net");
  4. // 设置URL和相应的选项
  5. curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  6. // 检查是否有错误发生
  7. if(!curl_errno($ch))
  8. {
  9. $info = curl_getinfo($ch);
  10. var_dump($info);
  11. }
  12. // 抓取URL并把它传递给浏览器
  13. $html = curl_exec($ch);
  14. // 关闭cURL资源,并且释放系统资源
  15. curl_close($ch);
  16. ?>

    打印出来的内容为:

    array
    'url' => string 'http://www.lampbrother.net' (length=26)
    'content_type' => null
    'http_code' => int 0
    'header_size' => int 0
    'request_size' => int 0
    'filetime' => int 0
    'ssl_verify_result' => int 0
    'redirect_count' => int 0
    'total_time' => float 0
    'namelookup_time' => float 0
    'connect_time' => float 0
    'pretransfer_time' => float 0
    'size_upload' => float 0
    'size_download' => float 0
    'speed_download' => float 0
    'speed_upload' => float 0
    'download_content_length' => float -1
    'upload_content_length' => float -1
    'starttransfer_time' => float 0
    'redirect_time' => float 0
    'certinfo' =>array
    empty
    'redirect_url' => string '' (length=0)

    返回的数组中包括了以下信息:
    “url” //资源网络地址
    “content_type” //内容编码
    “http_code” //HTTP状态码