Rumah > pembangunan bahagian belakang > masalah PHP > php oss 删除文件如何实现

php oss 删除文件如何实现

藏色散人
Lepaskan: 2023-03-06 19:06:02
asal
3870 orang telah melayarinya

php oss删除文件的实现方法:首先在阿里云中下载安装sdk;然后通过“$ossClient->deleteObjects($bucket, $object);”等方法实现文件删除即可。

php oss 删除文件如何实现

推荐:《PHP视频教程

oss文件上传删除(批量删除)处理

博主用的是阿里云的oss

首先先在阿里云下载安装sdk,相关的sdk下载请自行到阿里云下载

文档地址   https://help.aliyun.com/document_detail/85580.html?spm=a2c4g.11174283.6.1006.55ad7da2hNKC0w#h2-url-2

博主用的是第三个方法

 

<?php
require_once &#39;./aliyun-oss-php-sdk-master/autoload.php&#39;;
header("content-type:text/html;charset=utf-8");
// if (is_file(__DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;)) {
//     require_once __DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;;
// }
if (is_file(__DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;)) {
    require_once __DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;;
}
if (is_file(__DIR__ . &#39;/aliyun-oss-php-sdk-master/vendor/autoload.php&#39;)) {
    require_once __DIR__ . &#39;/aliyun-oss-php-sdk-master/vendor/autoload.php&#39;;
}
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[&#39;filename&#39;][&#39;name&#39;];
// <yourLocalFile>由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt
$filePath = $_FILES[&#39;filename&#39;][&#39;tmp_name&#39;];
try{
    //上传图片
    $ossClient->uploadFile($bucket, $object, $filePath);
    //文件访问权限,设置为所有人可读
    $acl = "public-read";
    $ossClient->putObjectAcl($bucket, $object, $acl);
    echo "<img src =&#39;http://xxxx.oss-cn-shenzhen.aliyuncs.com/".$object."&#39; >";die;
//删除单个文件
//    $ossClient->deleteObjects($bucket, $object);
    //删除多个文件
//    $objects = [&#39;文件名1&#39;,&#39;文件名2&#39;];
//    $ossClient->deleteObjects($bucket, $objects);
    
    } catch(OssException $e) {
    printf(__FUNCTION__ . ": FAILED\n");
    printf($e->getMessage() . "\n");
    return;
}
print(__FUNCTION__ . ": OK" . "\n");
Salin selepas log masuk
<?php
require_once &#39;./aliyun-oss-php-sdk-master/autoload.php&#39;;
header("content-type:text/html;charset=utf-8");
// if (is_file(__DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;)) {
//     require_once __DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;;
// }
if (is_file(__DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;)) {
require_once __DIR__ . &#39;/aliyun-oss-php-sdk-master/autoload.php&#39;;
}
if (is_file(__DIR__ . &#39;/aliyun-oss-php-sdk-master/vendor/autoload.php&#39;)) {
require_once __DIR__ . &#39;/aliyun-oss-php-sdk-master/vendor/autoload.php&#39;;
}
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[&#39;filename&#39;][&#39;name&#39;];
// <yourLocalFile>由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt
$filePath = $_FILES[&#39;filename&#39;][&#39;tmp_name&#39;];
try{
//上传图片
$ossClient->uploadFile($bucket, $object, $filePath);
//文件访问权限,设置为所有人可读
$acl = "public-read";
$ossClient->putObjectAcl($bucket, $object, $acl);
echo "<img src =&#39;http://zyjzccgk.oss-cn-shenzhen.aliyuncs.com/".$object."&#39; >";die;
//删除单个文件
//    $ossClient->deleteObjects($bucket, $object);
    //删除多个文件
//    $objects = [&#39;文件名1&#39;,&#39;文件名2&#39;];
//    $ossClient->deleteObjects($bucket, $objects);
    
} catch(OssException $e) {
printf(__FUNCTION__ . ": FAILED\n");
printf($e->getMessage() . "\n");
return;
}
print(__FUNCTION__ . ": OK" . "\n");
Salin selepas log masuk

Atas ialah kandungan terperinci php oss 删除文件如何实现. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan