首頁 >php教程 >php手册 >php_curl.dll扩展介绍和详解

php_curl.dll扩展介绍和详解

WBOY
WBOY原創
2016-06-13 10:58:57923瀏覽

、什么是CURL且能实现什么功能? 

 

 

什么是CURL 

curl是一个利用URL语法在命令行方式下工作的文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl同样支持HTTPS认证,HTTP POST方法, HTTP PUT方法, FTP上传, HTTP上传, 代理服务器, cookies, 用户名/密码认证, 下载文件断点续传等等,功能十分强大。

PHP中常用都实现那些功能: 

 

 

1、实现远程获取和采集内容 

2、实现PHP 网页版的FTP上传下载 

3、实现模拟登陆 

4、实现接口对接(API),数据传输等 

5、实现模拟Cookie等 

 

 

 

2、PHP 如何使用CURL功能 

1  整个操作过程中第一步是用cur_init()函数进行初始化 

$curl = curl_init(‘www.php100.com’); 

2  然后,用curl_setopt()函数进行设置选项。 

3  设置后,进行执行事务 curl_exec($curl); 

4  最后关闭curl_close(); 

 

 

3、使用PHP CURL实现传输和获取功能 

 

 

$curl = curl_init(); //初始化一个 cURL 对象 

curl_setopt($curl, CURLOPT_URL, "http://www.php100.com"); 

//设置你需要抓取的URL 

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 

//设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。 

$data = curl_exec($curl); //运行cURL,请求网页 

curl_close($curl); //关闭URL请求 

 

 

=========== 

 

$user = "admin"; 

$pass = "admin100"; 

$curlPost = "user=$user&pass=$pass"; 

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, "http://localhost/edu/login.php"); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); 

curl_setopt($ch, CURLOPT_POST, 1); 

curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost); 

$data = curl_exec($ch); 

curl_close($ch);

 

 

 

 

1、CURL模拟登陆的流程和步骤

2、tempnam 创建一个临时文件

3、使用CURL模拟登陆到bkJia论坛

 

$cookie_file    =    tempnam('./temp','cookie');

$login_url        =    'http://bbs.php100.com/login.php';

$post_fields    =    'cktime=31536000&step=2&pwuser=php100-88&pwpwd=111111';

 

 

$ch = curl_init($login_url);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);

curl_exec($ch);

curl_close($ch);

 

 

 

 

$url='http://bbs.php100.com/userpay.php';

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);

$contents = curl_exec($ch);

preg_match("/

  • ?????(.*)/",$contents,$arr);

    echo $arr[1];

    curl_close($ch);

    ?>

  • 陳述:
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn