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, "http://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实现Get和Post请求的方法的更多相关文章
- php之curl实现http与https请求的方法
原文地址:http://m.jb51.net/show/56492 这篇文章主要介绍了php之curl实现http与https请求的方法,分别讲述了PHP访问http网页与访问https网页的实例 ...
- PHP中使用cURL实现Get和Post请求的方法
1.cURL介绍 cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP.FTP.TELNET等.最爽的是,PHP也支持 cURL 库.本文将介绍 cURL 的一些高级特 ...
- 在PHP中使用CURL实现GET和POST请求的方法
1.CURL介绍 CURL是一个利用URL语法规定来传输文件和数据的工具.支持很多协议,如HTTP.FTP.TELNET等. 幸运的是PHP也支持CURL库.本文将介绍curl的一些高级特性,以及在P ...
- php使用curl实现get和post请求的方法,数据传输urldecode和json
PHP支持CURL库,利用URL语法规定来传输文件和数据的工具,支持很多协议,包括HTTP.FTP.TELNET等. 优点:是可以通过灵活的选项设置不同的HTTP协议参数,并且支持HTTPS.CURL ...
- PHP中使用CURL实现GET和POST请求
转自:http://www.smsyun.com/home-index-page-id-284.html 一.什么是CURL? cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议, ...
- PHP中使用CURL实现GET和POST请求数据
PHP中使用CURL实现GET和POST请求 一.什么是CURL? cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP.FTP.TELNET等.最爽的是,PHP也支持 ...
- PHP通过curl向其它服务器发请求并返回数据
在很多时候,我们都需要请求第三方的服务器来获取一些数据,比如token,比如百度的主动推送,那么我们的php如何实现向第三方服务器发请求呢?我们可以通过curl来实现 首先定义请求的url,然后创建h ...
- curl如何发起DELETE/PUT请求
curl如何发起DELETE/PUT请求 DELETE: curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE'); PUT: curl_setopt($ch ...
- Linux curl 命令模拟 POST/GET 请求
Linux curl 命令模拟 POST/GET 请求 本文链接:https://blog.csdn.net/sunboy_2050/article/details/82156402 curl 命 ...
随机推荐
- OA系统如何使用考勤机数据
通达OA系统使用考勤机数据目前有两种方法可以实现:一种是通过进行二次开发,将通达OA系统与考勤机结合起来使用:另一种是通过将考勤机的数据导出再导入OA系统中.进行二次开发的话,需要和定制开发工程师联系 ...
- python中列表和字典常用方法和函数
Python列表函数&方法 Python包含以下函数: 序号 函数 1 cmp(list1, list2)比较两个列表的元素 2 len(list)列表元素个数 3 max(list)返回列表 ...
- 【转】成功在AMD主机上用虚拟机安装原版雪豹
转载地址:http://www.jzh.me/archives/205.html/comment-page-1 一直都很想安装苹果的系统,当雪豹出来的时候就更加想了,但是自己的机器是AMD的,而且还是 ...
- ado.net基础思想-abstract
抽象类用做基类不能被实例化用途是派生出其他非抽象类 接口主要是实现多重继承 abstract 修饰符用于表示所修饰的类是不完整的,并且它只能用作基类.抽象类与非抽象类在以下方面是不同的:• 抽象类不能 ...
- SlickGrid example 2: 按想要的风格展示列
先上效果图. 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http:// ...
- c#对话框
OpenFileDialog open = new OpenFileDialog();//创建对话框 open.InitialDirectory = @"C:\Documents and S ...
- Expanding Rods(二分POJ1905)
Expanding Rods Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 13688 Accepted: 3527 D ...
- sass的安装与基础
安装教程:http://www.haorooms.com/post/sass_css 手册:http://sass.bootcss.com/docs/guide/ http://www.w3c ...
- Android超类
android.test.AndroidTestCase android写测试类的超类 android.database.sqlite.SQLiteOpenHelper sqllite的超类
- Python 2.7.9 Demo - 获取调用的参数
#coding=utf-8 #!/usr/bin/python import sys; print("The command line parameters are : "); f ...