前面的文章给大家讲解了php中curl_setopt函数的概念,它是PHP的一个扩展库,使用curl_setopt()函数可以方便快捷的抓取网页(可以用在采集方面),使用它需要在php.ini 中配置开启。
extension=php_curl.dll
现在已经可以使用php curl_setopt函数了,那么我们现在先看第一种用法:
1、 一个抓取网页的简单案例:
代码如下:
<?php // 创建一个新cURL资源 $ch = curl_init(); // 设置URL和相应的选项 curl_setopt($ch, CURLOPT_URL, "//m.sbmmt.com/"); curl_setopt($ch, CURLOPT_HEADER, false); // 抓取URL并把它传递给浏览器 curl_exec($ch); //关闭cURL资源,并且释放系统资源 curl_close($ch); ?>
上面的示例代码抓取了一个域名为//m.sbmmt.com/的网页,代码运行结果如下:
2、POST数据案例:
用 curl的时候,很多时候会有数据交互的,所以比较重要的。
<?php $ch = curl_init(); /*在这里需要注意的是,要提交的数据不能是二维数组或者更高 *例如array('name'=>serialize(array('tank','zhang')),'sex'=>1,'birth'=>'20101010') *例如array('name'=>array('tank','zhang'),'sex'=>1,'birth'=>'20101010')这样会报错的*/ $data = array('name' => 'test', 'sex'=>1,'birth'=>'20101010'); curl_setopt($ch, CURLOPT_URL, 'http://localhost/mytest/curl/upload.php'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_exec($ch); ?>
在 upload.php文件中,print_r($_POST);利用curl就能抓取出upload.php输出的内容Array ( [name] => test [sex] => 1 [birth] => 20101010 )
【相关文章推荐】
以上是使用php curl_setopt()函数实现抓取网页与POST数据的简单例子的详细内容。更多信息请关注PHP中文网其他相关文章!