随机阿里云 OSS 视频接口源码 PHP

直接不就废话了,开始教程,󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮首先需要安装一个 vendor

安装方法

创建 `composer.json` 文件

在你的项目根目录下创建一个 `󠄐󠄹󠅀󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮composer󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮.json` 文件,内容如下:

{
    "require": {
        "aliyuncs/oss-sdk-php": "^2.4"
    }
}

这个文件告诉 Composer 你需要安装 `aliyuncs/oss-sdk-php` 包,这是阿里云 OSS 的 PHP SDK。

3. 安装依赖󠄐󠄹󠅀󠄪󠄡󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮

在项目根目录下运行以下命令来󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄢󠄢󠄤󠄞󠄢󠄡󠄞󠄢󠄦󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄣󠄧󠄨󠄤󠄡󠄦󠄨󠄬󠅒󠅢󠄟󠄮󠇕󠅸󠆍󠇗󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠆖󠆫󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮󠅢󠄟󠄮安装依赖:

composer install

源码部分

<?php
require_once __DIR__.'/vendor/autoload.php';

use OSS\OssClient;
use OSS\Core\OssException;

// 配置信息
$accessKeyId = 'AccessKeyId';
$accessKeySecret = 'AccessKeySecret';
$endpoint = 'http(s)://oss-cn-shanghai.aliyuncs.com';  // 根据你的实际 OSS 服务区域修改
$bucket = 'Bucket';

try {
    // 初始化 OssClient
    $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);

    // 获取存储桶中的所有视频文件列表
    $options = [
        'delimiter' => '/',
        'prefix' => '文件夹名/'  // 假设所有视频文件都存储在 videos 文件夹下
    ];
    $result = $ossClient->listObjects($bucket, $options);
    $objectKeys = [];
    foreach ($result->getObjectList() as $objectInfo) {
        $objectKeys[] = $objectInfo->getKey();
    }

    // 随机选择一个视频文件
    if (empty($objectKeys)) {
        throw new OssException('No video files found in the bucket.');
    }
    $randomKey = $objectKeys[array_rand($objectKeys)];

    // 生成签名 URL,设置较长的过期时间,例如 30 天
    $expireTime = 30 * 24 * 60 * 60;  
    $signedUrl = $ossClient->signUrl($bucket, $randomKey, $expireTime);

    // 去除返回链接中的无用参数
    $parsedUrl = parse_url($signedUrl);
    unset($parsedUrl['query']);  // 去除查询参数
    $cleanUrl = $parsedUrl['scheme'] . '://' . $parsedUrl['host'] . $parsedUrl['path'];

    // 返回 JSON 格式的数据
    $response = [
        'url' => $cleanUrl
    ];
    header('Content-Type: application/json');
    echo json_encode($response);
} catch (OssException $e) {
    http_response_code(500);
    echo json_encode(['error' => $e->getMessage()]);
}
?>

 

请登录后发表评论

    没有回复内容