欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP curl使用实例

程序员文章站 2022-05-20 09:33:07
概述 本博客的前面两篇文章:curl和libcurl简介以及php中使用curl对php中curl的使用做了简单介绍,但是php中curl的使用却并不简单,尤其是curl...

概述

本博客的前面两篇文章:curl和libcurl简介以及php中使用curl对php中curl的使用做了简单介绍,但是php中curl的使用却并不简单,尤其是curl的各种配置项,本篇文章会讲解几个php的实例,以便大家更好的理解curl。

实例:抓取页面

使用curl抓取页面相对来说比较简单,但是这里有一点需要注意的是,curl默认会将抓取的页面直接输出到浏览器。然而,我们经常遇到的情况是获取抓取的内容,对内容做一定的处理之后再进行操作。因此,这里写出两种不同的情况。

直接输出到浏览器

复制代码 代码如下:

<?php
 $url="";
 $ch=curl_init();
 curl_setopt($ch,curlopt_url,$url);
 curl_exec($ch);
 curl_close($ch);
?>

运行上面这段代码,我们会直接看到百度首页。

不直接输出到浏览器

如果我们不想让curl抓取的内容直接输出到浏览器,那么就需要设置curl的“curlopt_returntransfer”为true,这样curl抓取的内容会作为curl_exec()函数的返回值出现。

复制代码 代码如下:

<?php
 $url="www.baidu.com";
 $content='';
 $ch=curl_init();
 curl_setopt($ch,curlopt_url,$url);
 curl_setopt($ch, curlopt_returntransfer,true);
 /*
  *根据手册来看,好像php5.1.3以前的版本还需要配合curlopt_binarytransfer一起使用,
  *但是5.1.3以后的版本中,该配置项已经被废弃了。
  */
 //curl_setopt($ch, curlopt_binarytransfer,true);
 $content=curl_exec($ch);
 var_dump($content);
 curl_close($ch);
?>

运行代码,我们可以看到页面输出了获取的网页源码。