oss文件上传删除(批量删除)处理
博主用的是阿里云的oss
首先先在阿里云下载安装sdk,相关的sdk下载请自行到阿里云下载
文档地址 https://help.aliyun.com/document_detail/85580.html?spm=a2c4g.11174283.6.1006.55ad7da2hNKC0w#h2-url-2
博主用的是第三个方法

<?php
require_once './aliyun-oss-php-sdk-master/autoload.php';
header("content-type:text/html;charset=utf-8");
// if (is_file(__DIR__ . '/aliyun-oss-php-sdk-master/autoload.php')) {
// require_once __DIR__ . '/aliyun-oss-php-sdk-master/autoload.php';
// }
if (is_file(__DIR__ . '/aliyun-oss-php-sdk-master/autoload.php')) {
require_once __DIR__ . '/aliyun-oss-php-sdk-master/autoload.php';
}
if (is_file(__DIR__ . '/aliyun-oss-php-sdk-master/vendor/autoload.php')) {
require_once __DIR__ . '/aliyun-oss-php-sdk-master/vendor/autoload.php';
}
use OSS\OssClient;
use OSS\Core\OssException;
// 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
$accessKeyId = "xxxxx";
$accessKeySecret = "xxxxx";
// Endpoint以杭州为例,其它Region请按实际情况填写。
$endpoint = "http://oss-cn-shenzhen.aliyuncs.com";
// 存储空间名称
$bucket = "xxxx";
$ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
// 判断bucketname是否存在,不存在就去创建
if (!$ossClient->doesBucketExist($bucket)) {
$ossClient->createBucket($bucket);
}
// 文件名称
$object = $_FILES['filename']['name'];
// <yourLocalFile>由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt
$filePath = $_FILES['filename']['tmp_name'];
try{
//上传图片
$ossClient->uploadFile($bucket, $object, $filePath);
//文件访问权限,设置为所有人可读
$acl = "public-read";
$ossClient->putObjectAcl($bucket, $object, $acl);
echo "<img src ='http://xxxx.oss-cn-shenzhen.aliyuncs.com/".$object."' >";die;
//删除单个文件
// $ossClient->deleteObjects($bucket, $object);
//删除多个文件
// $objects = ['文件名1','文件名2'];
// $ossClient->deleteObjects($bucket, $objects);
} catch(OssException $e) {
printf(__FUNCTION__ . ": FAILED\n");
printf($e->getMessage() . "\n");
return;
}
print(__FUNCTION__ . ": OK" . "\n");
<?php
require_once './aliyun-oss-php-sdk-master/autoload.php';
header("content-type:text/html;charset=utf-8");
// if (is_file(__DIR__ . '/aliyun-oss-php-sdk-master/autoload.php')) {
// require_once __DIR__ . '/aliyun-oss-php-sdk-master/autoload.php';
// }
if (is_file(__DIR__ . '/aliyun-oss-php-sdk-master/autoload.php')) {
require_once __DIR__ . '/aliyun-oss-php-sdk-master/autoload.php';
}
if (is_file(__DIR__ . '/aliyun-oss-php-sdk-master/vendor/autoload.php')) {
require_once __DIR__ . '/aliyun-oss-php-sdk-master/vendor/autoload.php';
}
use OSS\OssClient;
use OSS\Core\OssException;
// 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
$accessKeyId = "xxxxx";
$accessKeySecret = "xxxxx";
// Endpoint以杭州为例,其它Region请按实际情况填写。
$endpoint = "http://oss-cn-shenzhen.aliyuncs.com";
// 存储空间名称
$bucket = "xxxx";
$ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
// 判断bucketname是否存在,不存在就去创建
if (!$ossClient->doesBucketExist($bucket)) {
$ossClient->createBucket($bucket);
}
// 文件名称
$object = $_FILES['filename']['name'];
// <yourLocalFile>由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt
$filePath = $_FILES['filename']['tmp_name'];
try{
//上传图片
$ossClient->uploadFile($bucket, $object, $filePath);
//文件访问权限,设置为所有人可读
$acl = "public-read";
$ossClient->putObjectAcl($bucket, $object, $acl);
echo "<img src ='http://zyjzccgk.oss-cn-shenzhen.aliyuncs.com/".$object."' >";die;
//删除单个文件
// $ossClient->deleteObjects($bucket, $object);
//删除多个文件
// $objects = ['文件名1','文件名2'];
// $ossClient->deleteObjects($bucket, $objects);
} catch(OssException $e) {
printf(__FUNCTION__ . ": FAILED\n");
printf($e->getMessage() . "\n");
return;
}
print(__FUNCTION__ . ": OK" . "\n");
oss文件上传删除(批量删除)处理的更多相关文章
- PHP实现阿里云OSS文件上传(支持批量)
上传文件至阿里云OSS,整体逻辑是,文件先临时上传到本地,然后在上传到OSS,最后删除本地的临时文件(也可以不删,具体看自己的业务需求),具体实现流程如下: 1.下载阿里云OSS对象上传SDK(P ...
- SpringBoot整合阿里云OSS文件上传、下载、查看、删除
1. 开发前准备 1.1 前置知识 java基础以及SpringBoot简单基础知识即可. 1.2 环境参数 开发工具:IDEA 基础环境:Maven+JDK8 所用技术:SpringBoot.lom ...
- Java 客户端操作 FastDFS 实现文件上传下载替换删除
FastDFS 的作者余庆先生已经为我们开发好了 Java 对应的 SDK.这里需要解释一下:作者余庆并没有及时更新最新的 Java SDK 至 Maven 中央仓库,目前中央仓库最新版仍旧是 1.2 ...
- minio实现文件上传下载和删除功能
https://blog.csdn.net/tc979907461/article/details/106673570?utm_medium=distribute.pc_relevant_t0.non ...
- OSS文件上传及OSS与ODPS之间数据连通
场景描述 有这样一种场景,用户在自建服务器上存有一定数量级的CSV格式业务数据,某一天用户了解到阿里云的OSS服务存储性价比高(嘿嘿,颜值高),于是想将CSV数据迁移到云上OSS中,并且 ...
- .net core版 文件上传/ 支持批量上传,拖拽以及预览,bootstrap fileinput上传文件
asp.net mvc请移步 mvc文件上传支持批量上传,拖拽以及预览,文件内容校验 本篇内容主要解决.net core中文件上传的问题 开发环境:ubuntu+vscode 1.导入所需要的包:n ...
- js实现oss文件上传及一些问题
关于兼容性问题,ie8以下的可以使用4.x的版本 一.引入sdk和jq <script src="http://libs.baidu.com/jquery/2.0.0/jquery.m ...
- 构建基于阿里云OSS文件上传服务
转载请注明来源:http://blog.csdn.net/loongshawn/article/details/50710132 <构建基于阿里云OSS文件上传服务> <构建基于OS ...
- 记一次阿里云oss文件上传服务假死
引言 记得以前刚开始学习web项目的时候,经常涉及到需要上传图片啥的,那时候都是把图片上传到当前项目文件夹下面,每次项目一重启图片就丢了.虽然可以通过修改/tomcat/conf/server.xml ...
- SpringMVC中使用 MultipartFile 进行文件上传下载及删除
一:引入必要的包 <!--文件上传--> <!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fil ...
随机推荐
- BOOST 条件变量使用
代码: // boost库 条件变量 使用测试 #include <iostream> #include <boost/thread.hpp> using namespace ...
- 子网划分和VLAN
子网划分 IP地址的结构和分类 根据tcp/ip协议,连接在Internet上的每个设备都必须有一个IP地址,它是一个32位二进制数,为了方便人类识别,我们将它用点分十进制表示,每8位分为一段. IP ...
- PyTorch常用参数初始化方法详解
1. 均匀分布 torch.nn.init.uniform_(tensor, a=0, b=1) 从均匀分布U(a, b)中采样,初始化张量. 参数: tensor - 需要填充的张量 a - 均匀分 ...
- java内存模型深入理解
作为一个java程序员 jvm 虚拟机应该是最先接触的了,但是当初由于理解能力有限一直没搞明白是怎么回事,而是将他理解为运行java程序的环境,不过这也没错.但是随着工作时间的增加开始思考jvm里面工 ...
- 【Azure微服务 Service Fabric 】在SF节点中开启Performance Monitor及设置抓取进程的方式
前提条件 当我们观察到SF中某一个节点出现CPU不正常的情况,但是由于不能肉眼长期观察,所以可以通过开启Performance Monitor的方式来获取每一个进程的%Processer Time的方 ...
- ThreeJS学习6_几何体相关(BufferGeometry)
ThreeJS学习6_几何体相关(BufferGeometry) 使用 BufferGeometry 可以有效减少向 GPU 传输几何体相关数据所需的开销 可以自定义顶点位置, 面片索引, 法向量, ...
- 实现LNMP架构
LNMP简介 WEB资源类型: 静态资源:服务器端和客户端看到的是一样的 动态资源:服务器端放的是程序,客户端看到的是结果,并不是程序本身 和页面的静或者动没有关系 WEB相关语言 HTML JAVA ...
- 深入理解Java的抽象类和接口
对于面向对象来说,抽象是其重要特征之一.对于之中的抽象类和接口,两者有很多相似的地方,又有两者之间区别的地方. 用几个简单的例子让你快速的理解两者之间的概念和区别 鸣谢 一.抽象类 在了解抽象类之前, ...
- 浏览器缓存引起的bug总结
缓存原理 浏览器缓存分为强缓存和协商缓存 先检查是否过期,没有过期直接使用本地缓存.如果过期,查看是否使用协商缓存 协商缓存流程: 后端返回headers: ETag: W/"1e3-175 ...
- 分布式文件存储数据库 MongoDB
MongoDB 简介 Mongo 并非芒果(Mango)的意思,而是源于 Humongous(巨大的:庞大的)一词. MongoDB 是一个基于分布式文件存储的 NoSQL 数据库.由 C++ 语言编 ...