利用ThinkPHP自带的七牛云驱动上传文件到七牛云以及删除七牛云文件方法
一、准备工作
1.注册七牛云账号
2.选择对象储存->创建空间->设置为公开
3.在config配置文件中添加以下代码
'UPLOAD_FILE_QINIU' => array (
'maxSize' => 5 * 1024 * 1024,//文件大小
'rootPath' => './根目录/',
'savePath' => '子目录',// 文件上传的保存路径
'saveName' => array ('uniqid', ''),
'exts' => ['zip', 'rar', 'txt', 'doc', 'docx', 'xlsx', 'xls', 'pptx', 'pdf', 'chf'], // 设置附件上传类型
'driver' => 'Qiniu',//七牛驱动
'driverConfig' => array (
'secretKey' => '<这里填七牛SK>',
'accessKey' => '<这里填七牛AK>',
'domain' => '<这里填七牛提供的域名>',
'bucket' => '<空间名称>',
)
),
二、利用thinkPHP上传文件到七牛云
1.新建upload控制器->uploadFile方法
public function uploadTicketFile()
{
$setting = C('UPLOAD_FILE_QINIU'); $Upload = new \Think\Upload($setting); $info = $Upload->upload($_FILES); $path = str_replace('/','_',$info['file']['savepath']); $filename = $path.$info['file']['savename'];//七牛云保存的文件名称 if(!$info)
{
$data = ['status'=>0,'msg'=>'上传失败,'.$Upload->getError()];
}
else
{
$data = [
'status'=>1,
'msg' => '上传成功',
'name' => $_FILES['file']['name'],
'size' => $_FILES['file']['size'],
'cname' => $filename,
'type' => $info['file']['ext'],
'link' => $info['file']['url'],
];
} echo json_encode($data); exit;
}
三.利用thinkPHP删除七牛云上的文件
1.upload控制器->新建delFile方法
public function delFile()
{
$setting = C('UPLOAD_FILE_QINIU'); $file_name = I('post.file_name');//要删除的文件名称 $Qiniu = new Think\Upload\Driver\Qiniu\QiniuStorage($setting['driverConfig']); $result = $Qiniu->del($file_name); $error = $Qiniu->errorStr;//错误信息 if(is_array($result) && !($error))
{
$data = ['status'=>1,'msg'=>'删除文件成功'];
}
else
{
$data = ['status'=>0,'msg'=>'删除文件失败,'.$error];
} echo json_encode($data); exit;
}
最后,若有不足之处,请勿喷,欢迎指正!
利用ThinkPHP自带的七牛云驱动上传文件到七牛云以及删除七牛云文件方法的更多相关文章
- angular封装七牛云图片上传,解决同一页面多个上传按钮分别上传
step1:引入文件 引入Plupload *该SDK上传功能集于Plupload插件封装,所以需要下载Plupload; plupload.dev.js 引入qiniu.js为了简便,当时直接从官网 ...
- 图床工具PicGO实现七牛云图片上传
图床工具PicGO实现七牛云图片上传 我们在写博客或者网络文章时经常需要上传图片.目前最有名气的图床工具就是PicGO. 简单的界面,完整的功能,在相册里也能直接复制markdown图片链接.一直深受 ...
- 七牛云覆盖上传 php
使用七牛云过程中遇到了需要上传覆盖的情况,最终解决,分享给大家. 七牛云sdk上传示例中是这样写的 <?php require_once 'path_to_sdk/vendor/autoload ...
- C#使用七牛云存储上传下载文件、自定义回调
项目需要将音视频文件上传服务器,考虑并发要求高,通过七牛来实现. 做了一个简易的压力测试,同时上传多个文件,七牛自己应该有队列处理并发请求,我无论同时提交多少个文件,七牛是批量一个个排队处理了. 一个 ...
- 一个命令完成[打包+同步七牛cdn+上传服务器]
webpack+gulp+qshell+npm-scripts实现一个命令完成[打包+同步cdn+上传服务器] 说明 由于我们用的七牛云存储,所以cdn也是走的七牛,所以并不适用于其他的cdn,但是思 ...
- ASP.NET Core 简单实现七牛图片上传(FormData 和 Base64)
ASP.NET Core 简单实现七牛图片上传(FormData 和 Base64) 七牛图片上传 SDK(.NET 版本):https://developer.qiniu.com/kodo/sdk/ ...
- tp5.0整合七牛云图片上传
转:https://www.cnblogs.com/adobe-lin/p/7699638.html 这里以上传图片为例 上传其他文件也是大同小异 使用composer安装gmars/tp5-qini ...
- 七牛云存储上传自有证书开启https访问
虽然七牛云存储也提供免费SSL证书申请,但我就喜欢用其他平台申请的,于是在腾讯云申请了免费SSL证书,正准备在七牛上传,弹出的界面却让我傻了眼,如下图所示: 腾讯免费SSL证书提供了不同服务器环境的版 ...
- Android客户端实现七牛云存储文件上传
1.简单文件上传 上传模型如下. 1.1获得Token 不管是简单文件上传,还是分片上传.断点续传 都需要首先访问服务器,以获得上传凭证信息Token..用于测试时,可以用本地模拟Token信息(有 ...
随机推荐
- LB 简单比较 – F5、NetScaler、LVS、Nginx、Haproxy
LB 简单比较 – F5.NetScaler.LVS.Nginx.Haproxy 负载均衡技术是构建大型网站必不可少的架构策略之一.它的目的是,把用户的请求分发到多台后端的设备上,用以均衡服务器的负载 ...
- 2、CSS学习 - IT软件人员学习系列文章
上文我们讲了HTML,本文讲讲CSS. 上次我们讲了CSS是HTML页面的装修部分,就是各种瓷砖.粉墙.说明了CSS在HTML页面中的重要地位.没有CSS,那么HTML页面将很粗糙,就象我们的毛坯房一 ...
- npm常用命令小结
目录(更新于2016.09.23): 1.认识和使用NPM 2.npm包安装模式 3.npm包管理(package的安装.卸载.升级.查看.搜索.发布,其他等) npm install [-g] 本地 ...
- MapReduce实例-基于内容的推荐(一)
环境: Hadoop1.x,CentOS6.5,三台虚拟机搭建的模拟分布式环境 数据:下载的amazon产品共同采购网络元数据(需FQ下载)http://snap.stanford.edu/data/ ...
- RPM方式安装MySQL5.5.48 (Aliyun CentOS 7.0 & 卸载MySQL5.7)
环境是阿里云的CentOS7.0,更新了yum源(更新yum源请参考https://help.aliyun.com/knowledge_detail/5974184.html)之后先是尝试安装了MyS ...
- Java Gradle入门指南之插件管理(类型、导入及java plugin使用)
上一篇随笔介绍了如何使用Gradle内建任务,介绍了自定义Gradle任务类的三种方法(build文件,buildSrc文件夹.新建groovy项目),一个任务是一个原子操作,即不可分割的.项 ...
- 【转发】Html5 File Upload with Progress
Html5 File Upload with Progress Posted by Shiv Kumar on 25th September, 2010Senior Sof ...
- 在Hekaton里,正确选择哈希存储桶数
今天我使用2048的桶数的哈希索引,往Hakaton里插入100万的记录,测试下在哈希桶数里,哈希冲突(Hash Collision)是如何影响Hekaton的工作量——结果非常非常有意思.首先我想介 ...
- 参加 Tokyo Westerns / MMA CTF 2nd 2016 经验与感悟 TWCTF 2016 WriteUp
洒家近期参加了 Tokyo Westerns / MMA CTF 2nd 2016(TWCTF) 比赛,不得不说国际赛的玩法比国内赛更有玩头,有的题给洒家一种一看就知道怎么做,但是做出来还需要洒家拍一 ...
- Redhat使用CentOS的Yum 网络源
Redhat 的更新包只对注册的用户生效,所以我们自己手动更改成CentOS 的更新包,CentOS几乎和redhat是一样的. 1.首先查看redhat 7.0系统本身所安装的那些yum 软件包:[ ...