php使用cUrl方法 get、post请求
php使用curl方法,请确保已经开启curl扩展。传送门:http://www.cnblogs.com/wgq123/p/7450667.html
/**Curl请求get方法
*@$url String 要请求的url地址
*@$dara Array 要传递的参数
*@$timeout int 超时时间
*@return json
/
function curlGetRequest($url='', $data=array(), $timeout=5){
if($url == '' || $timeout <=0){
return false;
}
$param = '';
if(!empty($data)){
foreach($data as $k=>$v){
$param .= $k . '=' . $v .'&';
}
$param = rtrim($param, '&');
$url = $url.'?'.$param;
} $con = curl_init();
curl_setopt($con, CURLOPT_URL, $url);
curl_setopt($con, CURLOPT_HEADER, false);
curl_setopt($con, CURLOPT_RETURNTRANSFER,true);
curl_setopt($con, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
curl_setopt($con, CURLOPT_TIMEOUT, (int)$timeout); $output = curl_exec($con);
curl_close($con); return $output;
}
/**Curl请求Post方法
*@$url String 要请求的url地址
*@$dara Array 要传递的参数
*@$timeout int 超时时间
*@return json
/
function curlPostRequest($url='', $data=array(), $timeout=5){
if($url == '' || empty($data) || $timeout <=0){
return false;
}
$param = '';
foreach($data as $k=>$v){
$param .= $k . '=' . $v .'&';
}
$param = rtrim($param, '&');
$con = curl_init();
curl_setopt($con, CURLOPT_URL, $url);
curl_setopt($con, CURLOPT_HEADER, false);
curl_setopt($con, CURLOPT_POSTFIELDS, $param);
curl_setopt($con, CURLOPT_POST,true); curl_setopt($con, CURLOPT_RETURNTRANSFER,true);
curl_setopt($con, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
curl_setopt($con, CURLOPT_TIMEOUT,(int)$timeout);
$output = curl_exec($con);
curl_close($con);
return $output;
}
$url="http://127.0.0.1/request.php";
$timeout = 5;
$data = array('name'=>'张三','password'=>'123');
$res1 =curlGetRequest($url,$data);
$res2 =curlPostRequest($url,$data);
echo $res2;
参考链接: http://www.cnblogs.com/manongxiaobing/p/4698990.html
http://www.thinkphp.cn/code/1612.html
php使用cUrl方法 get、post请求的更多相关文章
- 封装curl类,post get方法实现网站请求
<?phpclass RamDemo{ //get方法 function RamGet($url,$arr) { if($arr!=''){ ...
- php使用file_get_contents 或者curl 发送get/post 请求 的方法总结
file_get_contents模拟GET/POST请求 模拟GET请求: <?php $data = array( 'name'=>'zhezhao', 'age'=>'23' ...
- PHP中CURL方法curl_setopt()函数的一些参数
bool curl_setopt (int ch, string option, mixed value)curl_setopt()函数将为一个CURL会话设置选项.option参数是你想要的设置,v ...
- 【转载】curl 模拟 GET\POST 请求,curl查看响应头 以及 curl post 上传文件
补充说明:curl查看响应头 curl -I "http://www.baidu.com"HTTP/1.1 200 OK #HTTP协议 HTTP 返回码Server: Tengi ...
- php 中使用cURL发送get/post请求,上传图片,批处理
cURL是利用url语法规定传输文件和数据的工具.php中有curl拓展,一般用来实现网络抓取,模拟发送get post请求,文件上传. 在php中建立curl的基本步骤如下: 1 初始化 ...
- 转 PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据) 通过curl_setopt()函数可以方便快捷的抓取网页(采集很方便),curl_setopt 是php的一个 ...
- PHP 中的 curl 函数发送 Post 请求应该注意的几点
public function http_request( $url, $post = '', $timeout = 5 ){ if( empty( $url ) ){return ;}$ch = c ...
- 使用getParameterMap()方法实现对请求参数的封装的工具类
我们知道,HttpServletRequest这个类的getParameter(name),getParameterValues(name)可以分别实现对页面传来的单个参数和对多个同名参数的接受.特别 ...
- php使用curl模拟多线程发送请求
每个PHP文件的执行是单线程的,但是php本身也可以用一些别的技术实现多线程并发比如用php-fpm进程,这里用curl模拟多线程发送请求.php的curl多线程是通过不断调用curl_multi_e ...
随机推荐
- Libevent::evhttp服务器
#include <cstdio> #include <stdio.h> #include <stdlib.h> #include <string.h> ...
- 【RabbitMQ 实战指南】一 死信队列
1.死信队列 DLX,全称为 Dead-Letter-Exchange,可以称之为死信交换器.当消息在一个队列中变成死信(dead message)之后,它能被发送到另一个交换器中,这个交换器就是DL ...
- 百万年薪python之路 -- RBAC角色权限设计
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成"用 ...
- Leetcode(6)Z字形变换
Leetcode(6)Z字形变换 [题目表述]: 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" ...
- MyEclipse 2013配置JDBC连接mySQL||Tomcat 7.0 8.0 配置 JDBC |配置mysql-connector-java-5.1.16
MyEclipse->Preferences->MyEclipse->Severs->Intergated Sandbox->Myeclipse Tomcat 7(或者T ...
- 实现文字色彩渐变(Mask)
文字色彩渐变是指的文字本身的颜色,不是背景渐变.要实现此效果可以采用Mask组件,本文先从介绍mask说起 1)Mask介绍 mask组件实现的作用是,mask组件所在游戏物体下的子游戏物体在mask ...
- fenby C语言 P33
#include <stdio.h> int main(void){ char *ps="my dream is to be a programmer"; printf ...
- 如何使用git上传代码
首先在github 上创建好远程仓库,并拷贝仓库地址,接下来按照以下步骤: 1.打开命令行进入要上传的文件目录,初始化 git init 2. 建立远程仓库,git remote add ori ...
- .Net Core WebApi(三)在Linux服务器上部署
鸽了好久,终于有个时间继续写了,继上一篇之后,又写(水)了一篇,有什么不足之处请大家指出,多谢各位了. 下面有两个需要用到的软件,putty和pscp,我已经上传到博客园了,下载请点击这里. 一.准备 ...
- vue页面首次加载缓慢原因及解决方案
第一次打包vue的项目部署到服务器下时,发现初次加载特别的缓慢,将近20s页面才加载出来,完全没有开发环境上的那么流畅.主要原因是页面在打包后如果不进行相关配置会导致资源文件特别的大,一次想要全部加载 ...