当前位置: 首页 > news >正文

使用AWS for PHP SDK实现Minio文件上传

本方案使用AWS的S3进行上传。

一:安装sdk文件

composer require aws/aws-sdk-php

官方参考文档:Installing the AWS SDK for PHP Version 3 - AWS SDK for PHP

二:获取参数

1、获取 ak  、sk

2、创建存储桶

三:执行文件上传。

function minioUploadFiles($files){require_once("/vendor/autoload.php");$rand=rand(0,100000);$name=time().$rand.'.jpg';$s3 = new Aws\S3\S3Client(['version' => 'latest','region'  => 'us-east-1','endpoint' => 'http://localhost:9000', //把localhost改为minio存储服务器的ip地址或域名,端口默认9000'use_path_style_endpoint' => true,'credentials' => ['key'    => 'sBAHk******49IO', //替换为自己的ak'secret' => 'EYzOiKMdTf***********Kin3IW80uh',  // 替换为自己的sk],]);try{// 发送PutObject请求并获得result对象$insert = $s3->putObject(['Bucket' => 'live***bucket', //替换为自己的存储桶名称'Key'    => $name,'Body'   => fopen($files['tmp_name'], 'r')]);$name="minio_".$name; //加minio_前缀是为了对文件名做标记,可根据自己实际情况选择保留或删除return $name;}catch(\Exception $e){return false;}
}

四:调用上传。

可以使用ajax进行上传,也可以使用form表单进行提交。

http://www.lryc.cn/news/609657.html

相关文章:

  • 音视频学习笔记
  • vue3入门-概览讲解
  • 使用 IntelliJ IDEA + Spring JdbcTemplate 操作 MySQL 指南
  • 基于Java的AI/机器学习库(Smile、Weka、DeepLearning4J)的实用
  • Go语言流式输出技术实现-服务器推送事件(Server-Sent Events, SSE)
  • 【银河麒麟服务器系统】自定义ISO镜像更新内核版本
  • Linux 文件与目录属性管理总结
  • Android 区块链 + CleanArchitecture + MVI 架构实践
  • IDA9.1使用技巧(安装、中文字符串显示、IDA MCP服务器详细部署和MCP API函数修改开发经验)
  • Android工程命令行打包并自动生成签名Apk
  • 服务器突然之间特别卡,什么原因?
  • ffmpeg下载windows教程
  • clickhouse 中文数据的正则匹配
  • 随笔之 ClickHouse 列式分析数据库安装注意事项及基准测试
  • 人大金仓数据库常见问题(持续更新)
  • 数据结构----排序
  • Android 15.0 启动app时设置密码锁(升级到framework层判断)
  • 《时间之隙:内存溢出》
  • 《基于电阻抗断层成像(EIT)的触觉传感器:物理模拟与机器学习的创新结合》论文解读
  • RocketMQ与Kafka 消费者组的‌重平衡操作消息顺序性对比
  • 实现建筑环境自动控制,楼宇自控技术提升舒适与安全
  • 【前端】三件套基础介绍
  • 规则方法关系抽取-笔记总结
  • Postman 四种请求体格式全解析:区别、用法及 Spring Boot 接收指南
  • 实习005 (web后端springboot)
  • 【后端】Java static 关键字详解
  • 从零开始搞定类与对象(中)
  • Matplotlib与PySide6兼容性问题及解决方案
  • open-webui pipelines报404, ‘Filter pipeline.exporter not found‘
  • 基于Express+Ejs实现带登录认证的多模块增删改查后台管理系统