【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}/" . '存储地址';
相关推荐
啊阿狸不会拉杆3 小时前
《计算机网络-自顶向下方法》5.7 网络管理、SNMP和NETCONF/YANG 读书笔记
开发语言·计算机网络·php
mjhcsp5 小时前
DeepSeek V4 Flash 0731 (Batch) 深度评测报告
log4j·php·batch
leoZ2316 小时前
第 8 篇:与 AI 协作的工作流 + 完整案例
前端·人工智能·神经网络·自然语言处理·性能优化·c#·php
qetfw7 小时前
Debian 部署 phpMyAdmin:Apache、PHP 与 MariaDB 管理界面配置
linux·debian·php·apache
AC赳赳老秦7 小时前
农产品公开数据应用:OpenClaw 抓取农产品价格、产销公开数据,实现农产品行情动态监测
java·c语言·javascript·python·php·deepseek·openclaw
三8447 小时前
redis三大机制:配置、持久化、主从复制(getshell 原理地基)
开发语言·php
G佳伟8 小时前
宝塔面板打不开且 Bt-Panel 未运行:从 HTTP 502 到 gevent 缺失的完整排查与修复
网络协议·http·php
名字还没想好☜9 小时前
Go 的 TCP 粘包与拆包:用长度前缀协议 + bufio 正确读消息
后端·tcp/ip·golang·go·php
kruptos19 小时前
分布式系统怎么“选主“?Raft 共识一次讲清
开发语言·分布式·php·共识算法
Figo_Cheung1 天前
Figo基于RNC理论的宇宙演化第七纪元猜想
开发语言·php