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数组中的索引数组和关联数组详解

    基于php数组中的索引数组和关联数组详解

    下面小编就为大家分享一篇基于php数组中的索引数组和关联数组详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • PHP 日,周,月点击排行统计

    PHP 日,周,月点击排行统计

    原理就是先判断当前文章的日期是否为当月当日当周的,是就点击数加1
    2012-01-01
  • PHP使用phpunit进行单元测试示例

    PHP使用phpunit进行单元测试示例

    这篇文章主要介绍了PHP使用phpunit进行单元测试,结合实例形式分析了phpunit的安装及单元测试相关使用技巧,需要的朋友可以参考下
    2019-09-09
  • PHP数组常用函数实例小结

    PHP数组常用函数实例小结

    这篇文章主要介绍了PHP数组常用函数,结合实例形式总结分析了php针对数组的统计、计算、去重、过滤等相关函数使用技巧,需要的朋友可以参考下
    2018-08-08
  • PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]

    PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]

    在PHP中,使substr函数截取字符串末位会出现乱码,因为中文UTF-8编码,每个汉字占3字节,而GB2312占2字节,英文占1字节,截取位不准确,造成断开的字符会把其后的..拉过来一起做一个字,所以出现了乱码。
    2011-12-12
  • Yii使用smsto短信接口的函数demo示例

    Yii使用smsto短信接口的函数demo示例

    这篇文章主要介绍了Yii使用smsto短信接口的函数demo示例,简单分析了Yii调用短信发送接口实现短信发送功能的相关技巧,需要的朋友可以参考下
    2016-07-07
  • centos下file_put_contents()无法写入文件的原因及解决方法

    centos下file_put_contents()无法写入文件的原因及解决方法

    下面小编就为大家带来一篇centos下file_put_contents()无法写入文件的原因及解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • PHP数组与字符串互相转换实例

    PHP数组与字符串互相转换实例

    在本篇文章里小编给大家分享的是关于PHP数组与字符串互相转换实例内容,有需要的朋友们可以学习下。
    2020-05-05
  • PHP反射机制用法实例

    PHP反射机制用法实例

    这篇文章主要介绍了PHP反射机制用法,是PHP程序设计中比较重要的概念,需要的朋友可以参考下
    2014-08-08
  • PHP进阶学习之Geo的地图定位算法详解

    PHP进阶学习之Geo的地图定位算法详解

    这篇文章主要介绍了PHP进阶学习之Geo的地图定位算法,结合实例形式详细分析了php Geo的地图定位算法相关概念、原理、实现方法与操作注意事项,需要的朋友可以参考下
    2019-06-06

最新评论