访问一个网站,图片的流量占的比例是非常高的!在你的服务器硬盘上,图片占的容量也是非常高的。

如果要搞一个图片非常多,用户量又很庞大的网站,那么,得花多少钱烧在服务器上?

这种时候,当然要用第三方图片存储平台啦!

我们看看使用thinkphp3.2怎么和七牛云API进行对接吧:

第一步:

复制下面链接打开,注册七牛云,创建空间

http://developer.qiniu.com/article/kodo/kodo-first/quickstart.html

第二步:

七牛云个人面板——密钥管理——获取AK和SK

第三步:

打开Thinkphp配置文件config.php

'UPLOAD_FRIEND' => array (
'maxSize' => 5 * 1024 * 1024,//文件大小
'rootPath' => './',
'saveName' => array ('uniqid', ''),
'driver' => 'Qiniu',
'driverConfig' => array (
'secrectKey' => 'SK输入到这里',
'accessKey' => 'AK输入到这里',
'domain' => '七牛云空间的测试域名,一般为XXXX.clouddn.com',
'bucket' => '七牛云空间名称',
),
),

第四步:

前台提交到控制器后,控制器直接调用配置项,直接可上传文件到七牛云,控制器调用方法如下:

$setting=C('UPLOAD_FRIEND');
$Upload = new \Think\Upload($setting);
$info = $Upload->upload($_FILES);

这样就能成功把图片上传到七牛云啦!!

但是我们需要在网站上对七牛云上面的图片进行管理删除怎么办?

Thinkphp3.2已经集成了QiniuStorage

可以看Thinkphp\Think\Upload\Driver\Qiniu\下的QiniuStorage文件里面的方法

示例几个调用方法:

删除图片方法:

$setting=C('UPLOAD_FRIEND');
$qiniu = new \Think\Upload\Driver\Qiniu\QiniuStorage($setting['driverConfig']);
$res = $qiniu->del('图片文件名');

查看图片列表方法:

$setting=C('UPLOAD_FRIEND');
$qiniu = new \Think\Upload\Driver\Qiniu\QiniuStorage($setting['driverConfig']);
$list = $qiniu->getList();
dump($list);

批量删除方法:

$setting=C('UPLOAD_FRIEND');
$qiniu = new \Think\Upload\Driver\Qiniu\QiniuStorage($setting['driverConfig']);
$arr = array("图片文件名","图片文件名","图片文件名");
$res= $qiniu->delBatch($arr);

那么我们把图片上传到七牛云了,我们直接访问 七牛云空间测试域名/图片文件名就可以访问到那张图片啦!

而且七牛云还支持生成略缩图/加水印/裁剪等方式访问获取!

在七牛的空间控制面板——图片处理——图片样式那里可以自定义你想要的样式!

设置好后会生成一段处理接口:

如:imageView2/2/w/79/h/79/format/jpg/interlace/0/q/70

那么我们怎么访问处理后的图片?

七牛云空间测试域名 + / + 图片文件名 + ? +处理接口

如:http://XXXXXXXXX.bkt.clouddn.com/2016-07-18_578c75f175bcd.jpg?imageView2/2/w/79/h/79/format/jpg/interlace/0/q/70

这样就能获取处理过的图片!不同的情景使用不同大小的图片!超好用!

【PHP】Thinkphp 七牛云API对接的更多相关文章

  1. 动手实操(一):如何用七牛云 API 实现相片地图?

    实操玩家: 在苹果手机上,我们只要打开定位服务,拍照后便能在相簿中找到地图,地图上显示着在各地拍摄的相片.网站上这种显示方式也并不少见,例如 Flickr.即将关闭的 Panoramio 等. 作为地 ...

  2. angular封装七牛云图片上传,解决同一页面多个上传按钮分别上传

    step1:引入文件 引入Plupload *该SDK上传功能集于Plupload插件封装,所以需要下载Plupload; plupload.dev.js 引入qiniu.js为了简便,当时直接从官网 ...

  3. thinkphp 中 使用七牛云上传

    利用七牛云私有空间存储文件 第一步,注册七牛云,创建空间,将空间设为私有 需要记下的东西: AK,SK,bucket 第二步配置ThinkPHP 在config.php添加 'UPLOAD_SITEI ...

  4. 在ThinkPHP框架(5.0.24)下引入Ueditor并实现向七牛云对象存储上传图片同时将图片信息保存到MySQL数据库,同时实现lazyload懒加载

    这是我花了很多天的时间才得以真正实现的一组需求. 文章后面有完整Demo的GitHub链接. 一. 需求描述 1. 应用是基于ThinkPHP5开发的: 2. 服务器环境是LNMP,PHP版本是7.2 ...

  5. 利用ThinkPHP自带的七牛云驱动上传文件到七牛云以及删除七牛云文件方法

    一.准备工作 1.注册七牛云账号 2.选择对象储存->创建空间->设置为公开 3.在config配置文件中添加以下代码 'UPLOAD_FILE_QINIU' => array ( ...

  6. ueditor上传图片到七牛云存储(form api,java)

    转:http://my.oschina.net/duoduo3369/blog/174655 ueditor上传图片到七牛云存储 ueditor结合七牛传图片 七牛的试炼 开发前的准备与注意事项说明 ...

  7. 七牛云整合Ueditor的ThinkPHP版本

    首先去七牛云官网下载phpSDK工具放在Think/library/Vendor下. ueditor后台调用方法: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...

  8. 使用Python3.7+Tornado5.1配合七牛云存储api来异步切分上传文件

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_123 之前写了几篇关于FastDfs分布式存储的文章:python3.7.3操作FastDfs来进行文件操作,其实市面上关于云存储 ...

  9. 使用python3.7+Vue.js2.0+Django2.0.4异步前端通过api上传文件到七牛云云端存储

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_130 之前一篇文章是通过普通js+tornado来上传七牛云:使用Tornado配合七牛云存储api来异步切分上传文件,本次使用v ...

随机推荐

  1. 每天学一点ubuntu指令

    2017-03-06apt-get | dpkg -i | apt-cache | add-apt-repository ppa源 | dpkg -S一.apt 给Ubuntu安装软件的一种命令方式a ...

  2. Mybatis的小计

    1连接池 一 我的错误想法 poolMaximumIdleConnections 最大活跃连接数 poolMaximumActiveConnections 最大空闲连接数 我一直以为 空闲是一直存在的 ...

  3. Java排序算法(一)

    Java排序算法(一) 排序的基本概念和分类 1.1排序的定义 在<大话数据结构>中,排序定义为,假设含有n个记录的序列为{r1,r2,...,rn},其相应的关键字{k1,k2,..., ...

  4. 我对USB的认识

    一.USB协议规范 (1)      基本概念   每一个设备(device)会有一个或者多个的逻辑连接点在里面,每个连接点叫endpoint.每个endpoint有四种数据传送方式:控制(Contr ...

  5. ssm(Spring、Springmvc、Mybatis)实战之淘淘商城-第十一天(非原创)

    文章大纲 一.课程介绍二.订单系统介绍三.项目源码与资料下载四.参考文章 一.课程介绍 一共14天课程(1)第一天:电商行业的背景.淘淘商城的介绍.搭建项目工程.Svn的使用.(2)第二天:框架的整合 ...

  6. java.lang.ClassNotFoundException:org/apache/commons/collections/CursorableLinkedList

    明明有 commons-collections.jar 将jar包复制到Tomcat的WEB-INF/lib下就可以了...

  7. 构建第一个Spring Boot2.0应用之集成mybatis、Druid(七)

    一.环境: IDE:IntelliJ IDEA 2017.1.1 JDK:1.8.0_161 Maven:3.3.9 springboot:2.0.2.RELEASE 二.说明:      本文综合之 ...

  8. TCP 协议中的 Window Size与吞吐量

    原地址:http://blog.sina.com.cn/s/blog_c5c2d6690102wpxl.html TCP协议中影响实际业务流量的参数很多,这里主要分析一下窗口的影响. ​TCP窗口目的 ...

  9. System Center Configuration Manager 2016 域准备篇(Part3)

    步骤2.将CM16加入域 注意:在ConfigMgr服务器(CM16 )上以本地管理员身份执行以下操作 手动加入域,请登录CM16.启动Windows文件资源管理器 右键单击This-PC,然后选择 ...

  10. 再回首win98

    因为一个软件只能运行在win98上,所以上个win98虚拟机. 下载的是经典的Win98.SE.iso 307M. 真是小巧呀,感慨现在的win8.1的3.69G,真是没法比. 原来是没有用过老古董的 ...