作者:zccst
一、使用curl进行get和post请求
//GET
public static function wrapCurlGet($url){
/*{{{*/
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
$result = json_decode($result,true);
return $result;
/*}}}*/
}
//POST
public static function wrapCurlPost($url,$feild){
/*{{{*/
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($feild));
$result = curl_exec($ch);
if ($result === FALSE) {
throw new Exception("cURL Error: " . curl_error($ch));
}
curl_close($ch);
$result = json_decode($result,true);
return $result;
/*}}}*/
}
二、高级使用方法
1,设置超时参数
参数CURLOPT_CONNECTTIMEOUT 通常用来设置curl尝试请求链接的时间,这是一个非常重要的选项,如果你把这段时间设置的太短了,可能会导致curl请求失败。 但是如果你把它设置的时间太长了,可能PHP脚本将死掉。
curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,5);
和这个参数相关的一个选项是 CURLOPT_TIMEOUT,这是用来设置curl允许执行的时间需求。如果您设置这一个很小的值,它可能会导下载的网页上是不完整的,因为他们需要一段时间才能下载。
curl_setopt($curl,CURLOPT_TIMOUT,5);
三、如何在linux下用命令行下使用curl请求目标地址,并将结果打印或保存在一个文件
curl -o tmp.txt -d "_from=xx¶m=value&_checksum=392b0d272251e4600be89ea8c5beab03" http://hostname/index.php?r=api/flow/getchannels
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 27 0 27 0 0 576 0 --:--:-- --:--:-- --:--:-- 0
vim tmp.txt
{"code":-1,"msg":"no data"}
分享到:
相关推荐
除了手动安装,你还可以使用一些集成开发环境(IDE)或Web服务器软件的管理界面来添加和管理PHP扩展,如XAMPP控制面板中的“PHP Extensions”选项。这种方法通常更简单,但可能不适用于所有情况。 总之,为Windows...
3. **高级功能**:`php_curl`支持多种HTTP方法(GET、POST、PUT等),可以设置HTTP头,进行POST数据提交,处理cookies,使用代理服务器,以及进行SSL连接。还可以通过设置选项实现自动重定向、超时控制、错误处理等...
文中提供的PHP代码示例展示了如何使用curl进行HTTP请求,并提供了一些解决405错误的常用配置选项。让我们逐步分析这个示例: 1. 设置请求头信息:代码通过设置`$header`数组来添加HTTP请求头,如`Accept`和`Accept-...
### PHP cURL 使用实例详解 #### 一、cURL简介 cURL 是一款强大的命令行工具,用于通过URL从或向服务器传输数据。...cURL 是一个非常强大且灵活的工具,掌握其使用方法对于进行网络编程非常有帮助。
本文将详细讲解PHP中的cURL类及其常用方法,如何封装和使用,以及如何处理登录、获取Cookie、模拟提交数据等任务。 首先,让我们了解什么是cURL。cURL(Client URL Library)是一个库,它提供了在命令行或编程语言...
例如,要设置POST方法,我们可以使用`curl_setopt()`函数,将`CURLOPT_POST`选项设置为`true`。 2. **设置POST数据** 当我们想要提交表单数据时,可以使用`curl_setopt()`函数设置`CURLOPT_POSTFIELDS`选项。对于...
hp的curl封装类用法,以实例形式较为详细的讲述了curl封装类及其使用方法,并总结了GET与POST的用法。 使用函数之前我们要需要把php curl模块打开(libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll) 开启php ...
本篇文章将深入探讨如何使用PHP的cURL库进行批量URL请求,并关注可能遇到的问题及解决方案。 首先,批量请求URL通常是为了提高效率,例如在数据抓取、接口测试或自动化任务中。批量请求的关键在于创建一个循环,...
分享一个php中curl类, 设置Cookie文件保存路径及文件名,模拟登录获取Cookie函数 , 模拟获取内容函数,模拟提交数据函数,php中curl类常用方法封装和详解
在CentOS系统中,安装PHP扩展是服务器管理中常见的任务,尤其当需要处理与网络相关的功能,如HTTP请求,或者需要使用cURL库时。本文将详细讲解如何在CentOS环境下,不重新编译PHP的情况下,安装cURL扩展。 1. **...
在PHP开发中,cURL库是一个非常重要的工具,它用于处理HTTP和其他协议的请求。当涉及到频繁的HTTP通信,如API调用或者内部服务交互时,使用cURL的长连接功能可以显著提升性能。本文将深入探讨如何在PHP中利用cURL...
用来替换WAMP server下的php_curl.dll,解决加载curl报错或无法加载问题。下载解压后,覆盖wamp\bin\php\php5.4.3\ext目录下对应文件,重启apache即可。如果不行请检查: 是否已修改php.ini文件去掉extension=...
配置文件中启用extension=php_curl.dll,以便在运行PHP脚本时能加载并使用cURL功能。 cURL扩展的使用涉及以下知识点: 1. **配置**:在php.ini中启用cURL扩展,重启服务器后,PHP就可以识别并使用cURL。 2. **函数...
使用`curl_init()`函数来启动一个新的cURL会话。例如: ```php $curl = curl_init(); ``` 2. **设置cURL选项**: `curl_setopt()`函数用于设置cURL会话的各种选项。例如,设置URL、禁用SSL验证、设置User-...
一个PHP curl get post通用类,curl 通用方法 。。get /post 传送数据,设置发送方式 0 get 1 post。具有很好的参考价值,朋友们如果喜欢可以下载,如果有更好的curl类可以发布到我们php中文网,大家一起学习交流。
然而,当我们在使用cURL与服务器交互时,可能会遇到一些异常情况,比如"nginx 499错误"。这个错误通常发生在Nginx服务器上,表示客户端已经关闭了连接,但服务器端还没有完成响应。下面我们将详细探讨这个问题及其...
**PHP_Curl 使用详解** PHP_Curl 是 PHP 中的一个扩展,用于执行 HTTP、FTP、SMTP 等多种协议的网络请求。它通过 cURL 库实现了丰富的功能,包括支持 SSL 证书、POST 数据、PUT 操作、FTP 上传、代理设置、HTTP ...
curl命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解php CURL 命令详解...
本文将详细介绍如何利用PHP实现一个Curl封装类,以及其使用方法。 首先,Curl封装类的基本结构通常包含初始化Curl句柄、设置请求选项、执行请求和处理响应等功能。下面是一个简单的Curl封装类的代码示例: ```php ...
windows下php7.3官方自带的php_curl.dll好像有问题,增加扩展curl经常失败