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

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

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

我们看看使用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. Silverlight 登陆界面

    美术水平有限,不喜勿喷. 界面代码,效果如下图 <UserControl x:Class="ElecDemoTelerikSL.Login" xmlns="http ...

  2. 使用gulp构建工具

    之前一个demo中用的是grunt,照着grunt用到的插件找了下gulp的,总体使用还算顺畅,说实话并不觉得学习成本有降低什么的,差不多.不过也遇到一些问题: 1.gulp.dest()输出目录需要 ...

  3. HDU 5877 Weak Pair DFS + 树状数组 + 其实不用离散化

    http://acm.hdu.edu.cn/listproblem.php?vol=49 给定一颗树,然后对于每一个节点,找到它的任何一个祖先u,如果num[u] * num[v] <= k.则 ...

  4. git merge的参数--squash的用处

    本地分支处理问题的过程中一般都是commit在本地分支,当验证完毕后就需要merge到baseline上. 在不懂merge的--squash这个参数前,我一般是这么操作的: 1.在本地分支" ...

  5. (一)Redis简介和安装

    1       Redis介绍 1.1      什么是NoSql 为了解决高并发.高可扩展.高可用.大数据存储问题而产生的数据库解决方案,就是NoSql数据库. NoSQL,泛指非关系型的数据库,N ...

  6. linux php 安装xdebug

    我的环境是PHP 5.2.5,下载的xdebug是Xdebug v2.2.1 源码包 PHP 5.3.20用的是Xdebug v2.1.0  {版本一定要匹配} 下载地址为:http://xdebug ...

  7. hdu 5489——Removed Interval——————【删除一段区间后的LIS】

    Removed Interval Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  8. Docker | 第四章:Dockerfile简单介绍及使用

    前言 前一章节,介绍了Docker常用的命令.在基本使用上,熟悉这些常用的命令基本上就够了.但在一些场景下,比如在部署SpringBoot应用时,通常我们都是打成Jar包,然后利用java命令进行运行 ...

  9. MVC中 Remote的用法

    一.web.config加入  <appSettings>    <add key="ClientValidationEnabled" value="t ...

  10. chrome浏览器表单自动填充默认样式-autofill

    Chrome会在客户登陆过某网站之后, 会自动记住密码 当你下次再次进入该网站的时候, 可以自由的选择登陆的账号, Chrome会为你自动填充密码. 而你无需再输入密码 这本身是一个很好的功能, 但是 ...