PHP中使用cURL实现Get和Post请求的方法

 更新时间:2013年03月13日 23:11:54   作者:  
PHP中使用cURL实现Get和Post请求的方法,需要的朋友可以参考一下

1.cURL介绍

  cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 cURL 库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它。

2.基本结构

  在学习更为复杂的功能之前,先来看一下在PHP中建立cURL请求的基本步骤:

  (1)初始化


    curl_init()

  (2)设置变量


    curl_setopt() 。最为重要,一切玄妙均在此。有一长串cURL参数可供设置,它们能指定URL请求的各个细节。要一次性全部看完并理解可能比较困难,所以今天我们只试一下那些更常用也更有用的选项。

  (3)执行并获取结果


    curl_exec()

  (4)释放cURL句柄


    curl_close()

3.cURL实现Get和Post

3.1 Get方式实现

复制代码 代码如下:

  //初始化
  $ch = curl_init();

  //设置选项,包括URL
  curl_setopt($ch, CURLOPT_URL, "https://www.jb51.net");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_HEADER, 0);

  //执行并获取HTML文档内容
  $output = curl_exec($ch);

  //释放curl句柄
  curl_close($ch);

  //打印获得的数据
  print_r($output);


3.2 Post方式实现
复制代码 代码如下:

   $url = "http://localhost/web_services.php";
  $post_data = array ("username" => "bob","key" => "12345");

  $ch = curl_init();

  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  // post数据
  curl_setopt($ch, CURLOPT_POST, 1);
  // post的变量
  curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

  $output = curl_exec($ch);
  curl_close($ch);

  //打印获得的数据
  print_r($output);

  


  以上方式获取到的数据是json格式的,使用json_decode函数解释成数组。

  $output_array = json_decode($output,true);

  如果使用json_decode($output)解析的话,将会得到object类型的数据。

相关文章

  • php中通过curl检测页面是否被百度收录

    php中通过curl检测页面是否被百度收录

    最近要对网站做个整理,需要检测网站内哪些页面没有被百度搜索引擎收录从而进行相关的调整。由于使用site命令一条条的去看实在是看不过来,就想到了使用php程序来批量处理一下
    2013-09-09
  • PHP/ThinkPHP实现批量打包下载文件的方法示例

    PHP/ThinkPHP实现批量打包下载文件的方法示例

    最近因为工作的需要,要根据条件自动打包供下载的功能,查找相关资料终于解决了,所以下面这篇文章主要给大家介绍了利用PHP或者ThinkPHP如何实现批量打包下载文件的方法示例,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • PHP设计模式之单例模式定义与用法分析

    PHP设计模式之单例模式定义与用法分析

    这篇文章主要介绍了PHP设计模式之单例模式定义与用法,结合实例形式较为详细的分析了单例模式的概念、特点、优缺点,并结合php实例形式分析了单例模式的定义与使用方法,需要的朋友可以参考下
    2019-03-03
  • PHP获取Exif缩略图的方法

    PHP获取Exif缩略图的方法

    这篇文章主要介绍了PHP获取Exif缩略图的方法,实例分析了php针对图片的读取及返回MIME类型的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • PHP实现求两个字符串最长公共子串的方法示例

    PHP实现求两个字符串最长公共子串的方法示例

    这篇文章主要介绍了PHP实现求两个字符串最长公共子串的方法,涉及php字符串与数组的遍历、运算、判断等相关操作技巧,需要的朋友可以参考下
    2017-11-11
  • PHP获取POST数据的几种方法汇总

    PHP获取POST数据的几种方法汇总

    本文给大家汇总介绍了PHP获取POST数据的几种常用方法,这里分享给大家,有需要的小伙伴来参考下吧。
    2015-03-03
  • jQuery ajax+PHP实现的级联下拉列表框功能示例

    jQuery ajax+PHP实现的级联下拉列表框功能示例

    这篇文章主要介绍了jQuery ajax+PHP实现的级联下拉列表框功能,涉及php结合jQuery的$.get方法动态交互实现省市二级联动下拉列表框相关操作技巧,需要的朋友可以参考下
    2019-02-02
  • php 利用socket发送HTTP请求(GET,POST)

    php 利用socket发送HTTP请求(GET,POST)

    作为php程序员一定会接触http协议,也只有深入了解http协议,编程水平才会更进一步。最近我一直在学习php的关于http的编程,许多东西恍然大悟,受益匪浅。希望分享给大家。本文需要有一定http基础的开发者阅读。
    2015-08-08
  • php读取torrent种子文件内容的方法(测试可用)

    php读取torrent种子文件内容的方法(测试可用)

    这篇文章主要介绍了php读取torrent种子文件内容的方法,可实现读取并显示torrent种子文件内容的功能,简单实用,需要的朋友可以参考下
    2016-05-05
  • PHP添加PNG图片背景透明水印操作类定义与用法示例

    PHP添加PNG图片背景透明水印操作类定义与用法示例

    这篇文章主要介绍了PHP添加PNG图片背景透明水印操作类定义与用法,涉及php操作图片的显示、保存、压缩、水印添加等相关操作技巧,需要的朋友可以参考下
    2019-03-03

最新评论