php curl使用 常用操作

时间:2022-08-30 12:01:34

1. http Get

简单的只需要 这四行 就

$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, "http://site" );
$output = curl_exec($ch);
curl_close ( $ch );

复杂的

public static function curlGet($url,$cookiefile,$header=null){
try{
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $url );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
//不知道如何看发出去的数据是什么样子的 使用这句话 可通过抓包工具查看到
// 需要抓包工具配合使用
curl_setopt($ch,CURLOPT_PROXY,'192.168.2.221:8889');
if($header){
// curl_setopt ( $ch, CURLOPT_HEADER, 1 );
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
// curl_setopt ( $ch, CURLOPT_COOKIE,$header['Cookie'] );
// curl_setopt ( $ch, CURLOPT_COOKIESESSION,$header['Cookie'] );
}
else{
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
} if($cookiefile){
curl_setopt ( $ch, CURLOPT_COOKIEFILE, $cookiefile ); // 读取cookie
curl_setopt ( $ch, CURLOPT_COOKIEJAR, $cookiefile ); // 设置Cookie信息保存在指定的文件中
} $output = curl_exec($ch);
// 获取curl 信息
$information = curl_getinfo($ch);
curl_close ( $ch );
}catch(\Exception $e){
print_r($e->getMessage());
}
return $output;
}

  

2. http Post

public static function curlPost($url,$data,$cookiefile=null,$header=null){
try{
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $url ); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt($ch,CURLOPT_PROXY,'192.168.2.221:8889');
if($header){
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
}
else{
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
}
if($cookiefile){
          curl_setopt ( $ch, CURLOPT_COOKIEFILE, $cookiefile ); // 读取cookie
curl_setopt ( $ch, CURLOPT_COOKIEJAR, $cookiefile ); // 设置Cookie信息保存在指定的文件中
}
      //!!!注意data的格式
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data);
//设置响应超时时间
curl_setopt($ch, CURLOPT_TIMEOUT, 120); $output = curl_exec($ch);
if($output === false){
if(curl_errno($ch) == CURLE_OPERATION_TIMEDOUT){
//处理逻辑
}
}
$information = curl_getinfo($ch);
curl_close ( $ch );
}catch(\Exception $e){
print_r($e->getMessage());
}
return $output;
}

  

3. https Get (未完待续)

4. https Post(未完待续)

5. curl 使用过程中 发现不足的地方(未完待续)

php curl使用 常用操作的更多相关文章

  1. [容器]docker-ce安装最新版-docker常用操作

    社区: http://www.dockerinfo.net/rancher http://dockone.io/ https://www.kubernetes.org.cn/ 1,docker安装配置 ...

  2. Elasticsearch本地环境安装和常用操作

    本篇文章首发于我的头条号Elasticsearch本地环境安装和常用操作,欢迎关注我的头条号和微信公众号"大数据技术和人工智能"(微信搜索bigdata_ai_tech)获取更多干 ...

  3. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  4. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

  5. Mac OS X常用操作入门指南

    前两天入手一个Macbook air,在装软件过程中摸索了一些基本操作,现就常用操作进行总结, 1关于触控板: 按下(不区分左右)            =鼠标左键 control+按下        ...

  6. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  7. nodejs配置及cmd常用操作

    一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...

  8. Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理

    摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■  详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...

  9. python 异常处理、文件常用操作

    异常处理 http://www.jb51.net/article/95033.htm 文件常用操作 http://www.jb51.net/article/92946.htm

随机推荐

  1. struts2 用if标签判断字符串包含

    String testStr = "用来判断是否包含的字符串"; <s:property value="testStr"/> <s:if te ...

  2. Processes vs Threads

    A process is an executing instance of an application. What does that mean? Well, for example, when y ...

  3. HDU 2647

    思路:拓扑排序 #include<stdio.h> #include<string.h> typedef struct { int to; int next; }EdgeNod ...

  4. SELECT TOP 1 &ast; FROM是什么意思

    SELECT TOP 1 * FROM的含义: 1.select为命令动词,含义为执行数据查询操作: 2.top 1子句含义为查询结果只显示首条记录: 3.*子句表示查询结果包括数据源中的所有字段: ...

  5. 创建自己的代码片段(CodeSnippet)

    前言 工作中经常会写一些重复的代码片段,如自动属性.for循环.Action等等,针对这种情况,VisualStudio已经给我们提供了一个非常方便的功能--代码片段,是我们可以简单的输入几个字母就能 ...

  6. 一道风骚的DP

    也是校赛学长出的一道题~想穿了很简单..但我还是听了学长讲才明白. 观察力有待提高. Problem D: YaoBIG's extra homeworkTime LimitMemory Limit1 ...

  7. mysql新手入门随笔

    1.启动/关闭服务器 第一种方法:通过Notifier 第二种方法: 通过Windows自带的服务管理:计算机右键选择管理弹出框选择"服务和应用程序"里的服务列表,从列表中找到My ...

  8. 2016-wing的年度总结

    大神们都爱写总结,为了早日成为大神,我也来写一波. 2016 有很多事情发生. 从日常生活来讲,生活水平得到了一定提升,从600一个月的村子搬到了800一个月的村子(/捂脸); 从就业环境来讲,许多人 ...

  9. PAT 乙级 1062 最简分数&lpar;20&rpar; C&plus;&plus;版

    1062. 最简分数(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 一个分数一般写成两个整数相除的形式: ...

  10. DataTables合并单元格&lpar;rowspan&rpar;的实现思路&lpar;多分组分类的情况&rpar;

    直接上代码,原理之前的随笔已经讲过了.http://www.cnblogs.com/hdwang/p/7115835.html 1.先看看效果 2.html代码,含js代码 2.1 common.js ...