php-curl

请求结构
curl的PHP扩展完成一个HTTP请求需要有以下步骤

  1. 初始化连接句柄
  2. 设置curl选项
  3. 执行并获取结果
  4. 释放curl句柄

 

 1. 初始化

 1 $ch = curl_init(); 

  2. 设置选项,包括URL

1  curl_setopt($ch,CURLOPT_URL,"http://www.devdo.net");
2 
3  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//表示返回字符串
4 
5  curl_setopt($ch,CURLOPT_HEADER,0);//不返回HTTP头信息

 3. 执行并获取HTML文档内容

 1  $output = curl_exec($ch); 
 2  $info = curl_getinfo($ch);//获取curl请求输出相关信息
 3 
 4  echo ' 获取 '.$info['url'].'耗时'.$info['total_time'].'秒';
 5 
 6  if($output === FALSE ){
 7 
 8  echo "CURL Error:".curl_error($ch);
 9 
10  }

 4. 释放curl句柄

 1 curl_close($ch); 

curl_getinfo()返回的是一个关联数组,参数如下:

 

url:网络地址。

content_type:内容编码。

http_code:HTTP状态码。

header_size:header的大小。

request_size:请求的大小。

filetime:文件创建的时间。

ssl_verify_result:SSL验证结果。

redirect_count:跳转计数。

total_time:总耗时。

namelookup_time:DNS查询耗时。

connect_time:等待连接耗时。

pretransfer_time:传输前准备耗时。

size_uplpad:上传数据的大小。

size_download:下载数据的大小。

speed_download:下载速度。

speed_upload:上传速度。

download_content_length:下载内容的长度。

upload_content_length:上传内容的长度。

starttransfer_time:开始传输的时间表。

redirect_time:重定向耗时。

 

http_build_query():

一般用于GET请求的时候拼装参数使用

 $url = $url.'?'.http_bulid_query($data);

你可能感兴趣的:(php-curl)