【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}/" . '存储地址';
相关推荐
黑金IT1 小时前
Laravel 实战:用Carbon筛选最近15分钟内的数据
php·laravel
zhangxueyi3 小时前
如何理解Linux的根目录?与widows系统盘有何区别?
linux·服务器·php
事业运财运爆棚13 小时前
Laravel 请求接口 调用2次
php·laravel
寰宇软件14 小时前
PHP CRM售后系统小程序
微信小程序·小程序·vue·php·uniapp
Again_acme15 小时前
20250118面试鸭特训营第26天
服务器·面试·php
ac-er888816 小时前
Yii框架中的多语言支持:如何实现国际化
android·开发语言·php
程序员老卢17 小时前
PHP流程控制
开发语言·php
請叫我菜鳥18 小时前
PHP常见正则表达式
开发语言·正则表达式·php
万亿少女的梦16819 小时前
WEB渗透技术研究与安全防御
开发语言·前端·网络·爬虫·安全·网络安全·php
PHP代码21 小时前
2025年PHP面试宝典,技术总结。
php