php-curl
请求结构
curl的PHP扩展完成一个HTTP请求需要有以下步骤
- 初始化连接句柄
- 设置curl选项
- 执行并获取结果
- 释放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);


浙公网安备 33010602011771号