cURL 是利用URL语法规定传输数据和文件的工具,支持很多协议,如HTTP、FTP、Telnet等
基本步骤:
一. 初始化 $ch = curl_init();
二.设置选项,包括URL curl_setopt($ch, CURLOPT_URL,"http://www.php.net");
三.执行并获取HTML文档内容 $output = curl_exec($ch);
(1) if($output===false){echo "cURL Error".curl_error($ch)} //return string
(2) $info = curl_getinfo($ch); //return array
四. 释放cURL句柄 curl_close($ch);
选项
//将curl_exec()获取的信息以文件流的形式返回(可以放在变量中),而不是直接输出(下载文件)
curl_setopt($ch, CURLOPT_RETRUNTRANSFER,1);
//将头文件的信息作为数据流输出
curl_setopt($ch, CURLOPT_HEADER,1);
//post发送
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$array);
//设置超时时间
curl_setopt($ch, CURLOPT_TIMEOUT,5); //秒
//上传文件
上传文件只需要把文件路径当作一个post变量传过去,不过记得在前面加上@符号
$post_data = array(
"foo"=>"bar",
"upload"=>"@test.zip",
);
//设置HTTP头字段的数组
curl_setopt($ch, CURLOPT_HTTPHEADER,$array);
数组 为array('Content-type: text/plain', 'Content-length: 100')
//使用代理访问
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($ch, CURLOPT_PROXY, 125.21.23.6:8080);
url_setopt($ch, CURLOPT_PROXYUSERPWD, 'user:password');如果要密码的话,加上这个