zoukankan      html  css  js  c++  java
  • 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 OSSOssClient;
    use OSSCoreOssException;
    
    // 阿里云主账号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 "); printf($e->getMessage() . " "); return; } print(__FUNCTION__ . ": OK" . " ");
    <?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 OSSOssClient;
    use OSSCoreOssException;

    // 阿里云主账号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 ");
    printf($e->getMessage() . " ");
    return;
    }
    print(__FUNCTION__ . ": OK" . " ");
  • 相关阅读:
    NGUI的HUD Text的扩展插件学习--(HUDText)的使用
    C#设计模式:外观模式(Facade Pattern)
    NGUI的HUD Text的扩展插件学习--(UIFollowTarget)的使用
    NGUI的怎么在一个Gameobject(游戏物体)中调用另一个Gameobject(游戏物体)的脚本(C#)
    C#设计模式:组合模式(Composite Pattern)
    C#Contains方法的错误理解
    C#.NET动态页面静态化生成
    C++ primer plus读书笔记——第1章 预备知识
    如何判断一个数是2的幂
    C++将数值转换为string
  • 原文地址:https://www.cnblogs.com/junyi-bk/p/12340013.html
Copyright © 2011-2022 走看看