【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}/" . '存储地址';
相关推荐
2501_941623322 小时前
C++高性能网络服务器与epoll实战分享:大规模并发连接处理与事件驱动优化经验
开发语言·php
catchadmin4 小时前
PHP True Async RFC 被拒——原生异步离 PHP 还有多远?
开发语言·php
J***79394 小时前
PHP在电商中的Magento
开发语言·php
大侠课堂6 小时前
互联网大厂面试题100道-阿里百度篇-完整版
百度·阿里云·面试·面试题·阿里
q***06298 小时前
ThinkPHP和PHP的区别
开发语言·php
Serverless社区8 小时前
【本不该故障系列】告别资源“不确定性”,SAE如何破解刚性交付核心困境
阿里云·云原生·serverless
Protein_zmm10 小时前
第一章 计算机网络和因特网(下)
服务器·计算机网络·php
q***99412 小时前
IPV6公网暴露下的OPENWRT防火墙安全设置(只允许访问局域网中指定服务器指定端口其余拒绝)
服务器·安全·php
u***u68512 小时前
PHP在电商中的WooCommerce
开发语言·php
冠希陈、13 小时前
PHP 过滤敏感词(含类库)
开发语言·php·内容敏感词