`
zccst
  • 浏览: 3319329 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

php curl的一些使用方法

 
阅读更多
作者: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&param=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"}
分享到:
评论

相关推荐

    php curl安装 php中没有编译curl的解决方法for windows

    除了手动安装,你还可以使用一些集成开发环境(IDE)或Web服务器软件的管理界面来添加和管理PHP扩展,如XAMPP控制面板中的“PHP Extensions”选项。这种方法通常更简单,但可能不适用于所有情况。 总之,为Windows...

    php扩展 php_curl

    3. **高级功能**:`php_curl`支持多种HTTP方法(GET、POST、PUT等),可以设置HTTP头,进行POST数据提交,处理cookies,使用代理服务器,以及进行SSL连接。还可以通过设置选项实现自动重定向、超时控制、错误处理等...

    php采用curl访问域名返回405 method not allowed提示的解决方法

    文中提供的PHP代码示例展示了如何使用curl进行HTTP请求,并提供了一些解决405错误的常用配置选项。让我们逐步分析这个示例: 1. 设置请求头信息:代码通过设置`$header`数组来添加HTTP请求头,如`Accept`和`Accept-...

    php_curl_使用实例

    ### PHP cURL 使用实例详解 #### 一、cURL简介 cURL 是一款强大的命令行工具,用于通过URL从或向服务器传输数据。...cURL 是一个非常强大且灵活的工具,掌握其使用方法对于进行网络编程非常有帮助。

    php中curl类常用方法封装和详解

    本文将详细讲解PHP中的cURL类及其常用方法,如何封装和使用,以及如何处理登录、获取Cookie、模拟提交数据等任务。 首先,让我们了解什么是cURL。cURL(Client URL Library)是一个库,它提供了在命令行或编程语言...

    php curl模仿form表单提交图片或文件

    例如,要设置POST方法,我们可以使用`curl_setopt()`函数,将`CURLOPT_POST`选项设置为`true`。 2. **设置POST数据** 当我们想要提交表单数据时,可以使用`curl_setopt()`函数设置`CURLOPT_POSTFIELDS`选项。对于...

    php的Curl处理类

    hp的curl封装类用法,以实例形式较为详细的讲述了curl封装类及其使用方法,并总结了GET与POST的用法。 使用函数之前我们要需要把php curl模块打开(libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll) 开启php ...

    php curl批量请求url

    本篇文章将深入探讨如何使用PHP的cURL库进行批量URL请求,并关注可能遇到的问题及解决方案。 首先,批量请求URL通常是为了提高效率,例如在数据抓取、接口测试或自动化任务中。批量请求的关键在于创建一个循环,...

    php中curl类常用方法封装和详解.zip

    分享一个php中curl类, 设置Cookie文件保存路径及文件名,模拟登录获取Cookie函数 , 模拟获取内容函数,模拟提交数据函数,php中curl类常用方法封装和详解

    CentOs下安装PHP扩展 curl

    在CentOS系统中,安装PHP扩展是服务器管理中常见的任务,尤其当需要处理与网络相关的功能,如HTTP请求,或者需要使用cURL库时。本文将详细讲解如何在CentOS环境下,不重新编译PHP的情况下,安装cURL扩展。 1. **...

    php curl 长连接的实现

    在PHP开发中,cURL库是一个非常重要的工具,它用于处理HTTP和其他协议的请求。当涉及到频繁的HTTP通信,如API调用或者内部服务交互时,使用cURL的长连接功能可以显著提升性能。本文将深入探讨如何在PHP中利用cURL...

    php_curl-5.3.13-VC9-x64.zip(php curl模块)

    用来替换WAMP server下的php_curl.dll,解决加载curl报错或无法加载问题。下载解压后,覆盖wamp\bin\php\php5.4.3\ext目录下对应文件,重启apache即可。如果不行请检查: 是否已修改php.ini文件去掉extension=...

    php5.3php_curl

    配置文件中启用extension=php_curl.dll,以便在运行PHP脚本时能加载并使用cURL功能。 cURL扩展的使用涉及以下知识点: 1. **配置**:在php.ini中启用cURL扩展,重启服务器后,PHP就可以识别并使用cURL。 2. **函数...

    php下curl用法详解

    使用`curl_init()`函数来启动一个新的cURL会话。例如: ```php $curl = curl_init(); ``` 2. **设置cURL选项**: `curl_setopt()`函数用于设置cURL会话的各种选项。例如,设置URL、禁用SSL验证、设置User-...

    php中curl的get,post通用类.zip

    一个PHP curl get post通用类,curl 通用方法 。。get /post 传送数据,设置发送方式 0 get 1 post。具有很好的参考价值,朋友们如果喜欢可以下载,如果有更好的curl类可以发布到我们php中文网,大家一起学习交流。

    PHP_Curl使用详解.doc

    **PHP_Curl 使用详解** PHP_Curl 是 PHP 中的一个扩展,用于执行 HTTP、FTP、SMTP 等多种协议的网络请求。它通过 cURL 库实现了丰富的功能,包括支持 SSL 证书、POST 数据、PUT 操作、FTP 上传、代理设置、HTTP ...

    php curl nginx 499 错误

    然而,当我们在使用cURL与服务器交互时,可能会遇到一些异常情况,比如"nginx 499错误"。这个错误通常发生在Nginx服务器上,表示客户端已经关闭了连接,但服务器端还没有完成响应。下面我们将详细探讨这个问题及其...

    php CURL 命令详解

    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封装类

    本文将详细介绍如何利用PHP实现一个Curl封装类,以及其使用方法。 首先,Curl封装类的基本结构通常包含初始化Curl句柄、设置请求选项、执行请求和处理响应等功能。下面是一个简单的Curl封装类的代码示例: ```php ...

    php7.3 php_curl.dll x64

    windows下php7.3官方自带的php_curl.dll好像有问题,增加扩展curl经常失败

Global site tag (gtag.js) - Google Analytics