PHP支持的由Daniel Stenberg创建的libcurl库允许你(模拟)与各种的服务器使用各种类型的协议进行连接和通讯。libcurl目前支持http、https、ftp、gopher、telnet、dict、file和ldap协议。libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP 基于表单的上传、代理、cookies和用户名+密码的认证。
用curl资源模拟浏览器的请求:
1 <?php 2 // 创建一个新cURL资源 3 $ch = curl_init (); 4 5 // 设置URL和相应的选项 6 curl_setopt ( $ch , CURLOPT_URL , "http://www.example.com/" ); 7 //不设置请求头信息 8 curl_setopt ( $ch , CURLOPT_HEADER , 0 ); 9 //开启模拟POST请求 10 curl_setopt($ch,CURLOPT_POST,1); 11 /* 12 curl_setopt()常用选项说明: 13 CURLOPT_URL:设置模拟浏览器的请求地址 14 CURLOPT_RETURNTANSFER(1):捕获内容但不输出 15 CURLOPT_HEADER(0或1):设置请求头信息;设置为1 16 CURLOPT_POST(1):是否开启模拟POST请求;开启为1 17 CURLOPT_POSTFIELDS:设置POST请求时传递的参数,(当参数为数组时,cURL会把数据编码成 multipart/form-data,而然传递一个URL-encoded字符串时,数据会被编码成 application/x-www-form-urlencoded。) 18 */ 19 20 // 执行cURL资源 21 $result=curl_exec ( $ch ); 22 echo $result; 23 // 关闭cURL资源,并且释放系统资源 24 curl_close ( $ch ); 25 ?>
时间: 2024-09-28 04:45:11