【OSS】php使用oss存储

阿里云oss官方文档:文档

1、前期工作

  • 创建阿里云账号,登录
  • 创建bucket,注意修改权限,要不然可能读取不到
  • 申请accessKeyId和accessKeySecret accessKey

2、项目中安装OSS扩展

php 复制代码
composer require aliyuncs/oss-sdk-php

3、基础使用教程

php 复制代码
try {
    $ossClient = new OssClient('access_key_id', 'access_key_secret', 'endpoint');
    // 可以从这里创建bucket
    $ossClient->createBucket('bucket【存储空间名称】')
    // 查看空间是否存在
    $ossClient->doesBucketExist('bucket【存储空间名称】')
} catch (OssException $e) {
    return $e->getMessage();
}

4、上传

php 复制代码
try{
    $bucket= "bucket";//存储空间名称
    // 填写Object完整路径,例如:storage/default/20241216/173433347296636.jpg,Object完整路径中不能包含Bucket名称。
    $object = "storage/default/20241216/173433347296636.jpg";
    // 填写本地文件的完整路径,例如文件临时路径$_FILES['file']['tmp_name'],或者D:\\localpath\\examplefile.txt
    $filePath = "C:\Users\78325\AppData\Local\Temp\phpECFC.tmp";

	// 上传
    $ossClient->uploadFile($bucket, $object, $filePath);
} catch(OssException $e) {
    return $e->getMessage();
}

5、上传后在线查看文件

php 复制代码
// https://cxyzoss.oss-cn-beijing.aliyuncs.com/storage/default/20241216/173433238811216.jpg 
// !!! 注意,查看图片时Header传值Content-Type:text/html【不用这个会强制下载】
// [官方预览文档](https://help.aliyun.com/zh/oss/user-guide/how-to-ensure-an-object-is-previewed-when-you-access-the-object#ZkKEz)
return "https://{$bucket}.{$endpoint}/" . '存储地址';
相关推荐
cq林志炫3 小时前
由于openssl升级导致重启php时提示libssl.so.1.0.0不存在
php
stark张宇3 小时前
攻克 CRMRB 部署难点:从 PHP 扩展、数据库配置到进程守护
nginx·centos·php
爬山算法4 小时前
Redis(60) Redis的复制延迟如何优化?
redis·bootstrap·php
代码or搬砖5 小时前
文件上传阿里云OSS以及本地图片服务器搭建
服务器·阿里云·云计算
熙客7 小时前
阿里云负载均衡SLB的使用
网络·阿里云·云原生·云计算·负载均衡
JaguarJack9 小时前
PHP "真异步" TrueAsync SAPI 与 NGINX Unit 集成
后端·php
晓风残月淡12 小时前
JVM字节码与类的加载(二):类加载器
jvm·python·php
Wx-bishekaifayuan21 小时前
基于微信小程序的社区图书共享平台设计与实现 计算机毕业设计源码44991
javascript·vue.js·windows·mysql·pycharm·tomcat·php
阿里-于怀1 天前
阿里云发布《AI 原生应用架构白皮书》
人工智能·阿里云·ai·架构·白皮书·ai原生
我总是词不达意1 天前
vue3 + el-upload组件集成阿里云视频点播从本地上传至点播存储
前端·vue.js·阿里云·elementui