首先安装阿里云oss扩展:

composer require aliyuncs/oss-sdk-php

如果这个安装不上可以直接下载SDK的包:

链接:https://pan.baidu.com/s/1QD0O2e55CHylGQjoWHXEJQ
提取码:q4m6

下载解压后重命名为aliyun-oss放到extend目录下然后

在你的config文件中加入以下配置:

return [
'KeyId' => '', //Access Key ID
'KeySecret' => '', //Access Key Secret
'Endpoint' => '', //阿里云oss 外网地址endpoint
'Bucket' => '', //Bucket名称
];

接下来就是上传的方法了:记得在控制器中引用哦:

use OSS\OssClient;
use OSS\Core\OssException;

上代码:

public function uploadFile()
{
$file= request()->file('icon');
$resResult = Image::open($file);
$type = $resResult->type();
// 尝试执行
try {
$accessKeyId = config('aliyun_oss.accessKeyId');//去阿里云后台获取秘钥
$accessKeySecret = config('aliyun_oss.accessKeySecret');//去阿里云后台获取秘钥
$endpoint = config('aliyun_oss.endpoint');//你的阿里云OSS地址
$bucket = config('aliyun_oss.bucket');//你的阿里云OSS地址
//实例化对象 将配置传入
$ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
//这里是有sha1加密 生成文件名 之后连接上后缀
$fileName = sha1(date('YmdHis', time()) . uniqid()) . '.' . $type;
//上传至阿里云的目录 为年+月/日的格式
$pathName = date('Y-m/d') . '/' .$fileName;
//执行阿里云上传 bucket名称,上传的目录,文件
$result = $ossClient->uploadFile($bucket, $pathName, $file->getInfo()['tmp_name']);
} catch (OssException $e) {
return $e->getMessage();
}
//将结果输出
return $result['info']['url'];
}

TP框架上传图片至阿里云oss的更多相关文章

  1. 上传图片到阿里云OSS和获取上传图片的外网url的步骤

    啥都不说  直接上代码 1.html: <form action="/bcis/api/headImgUpload.json" method="post" ...

  2. Java中使用RestFul接口上传图片到阿里云OSS服务器

    1.接口方法 import java.io.IOException; import javax.servlet.http.HttpServletRequest; import org.springfr ...

  3. swift3.0 从相册选取或者拍照上传图片至阿里云OSS

    导入相应的库 import Photos import AliyunOSSiOS 选取照片需要继承 UIImagePickerControllerDelegate,UINavigationContro ...

  4. vue中上传图片至阿里云oss

    1.开通阿里云的oss服务这些这里就不多做介绍了 2.登入阿里云的后台管理系统创建一个Bucket 3.在后台管理系统中进入访问控制 4.点击用户管理->新建用户->填写相关信息,就生成了 ...

  5. 上传图片到阿里云oss

    阿里云地址 登录阿里云管理控制台,创建对象存储oss private static final String endpoint = "http://oss-cn-shanghai.aliyu ...

  6. swoft 上传图片到 阿里云oss aliyun-oss

    1.swoft  获取上传的文件 .官方文档上面没有看到 $files = $request->getUploadedFiles(); $file = $files['file']; 2.在模型 ...

  7. laravel使用阿里云OSS上传图片

    需要自己注册阿里云账号并且开通oss服务,建立Bucket存储空间,此步骤不做演示 一.composer安装:使用composer在项目根目录执行以下命令 composer require johnl ...

  8. C# .net Ueditor实现图片上传到阿里云OSS 对象存储

    在学习的时候,项目中需要实现在Ueditor编辑器中将图片上传到云储存中,老师演示的是上传到又拍云存储,既然看了一遍,直接照搬不算本事,咱们可以依葫芦画瓢自己来动手玩玩其它的云存储服务. 现在云计算产 ...

  9. PHP上传文件到阿里云OSS,nginx代理访问

    1. 阿里云OSS创建存储空间Bucket(读写权限为:公共读) 2. 拿到相关配置 accessKeyId:********* accessKeySecret:********* endpoint: ...

随机推荐

  1. 今天你上班了吗?来聊聊一个隐蔽了 5 年的BUG!

    前言 今天,我们要揭晓一个 FineUI 隐藏最深的一个BUG,这个问题从 2014-07-30 发布 FineUIPro v1.0.0 就一直存在,直到最新于 2020-01-10 发布的 v6.1 ...

  2. java设计模式6——代理模式

    java设计模式6--代理模式 1.代理模式介绍: 1.1.为什么要学习代理模式?因为这就是Spring Aop的底层!(SpringAop 和 SpringMvc) 1.2.代理模式的分类: 静态代 ...

  3. 二维数组转稀疏数组、稀疏数组恢复二维数组(Java实现)

    public static void main(String[] args) { // 创建一个原始的二维数组 9*9 int chessArr1[][] = new int[9][9]; // 0表 ...

  4. ELF文件之五——使用链接脚本-2个函数-data-bss

    main.c int enable; ; int main() { ; } int add() { ; } bss段在elf中虽然size是4,但并不占filesize,节头表如下图所示 程序头中,项 ...

  5. [Redis-CentOS7]Redis列表操作(三)

    LPUSH添加列表 127.0.0.1:6379> LPUSH websites www.baidu.com (integer) 1 LRANGE 获取全部值 127.0.0.1:6379> ...

  6. 珠峰-6-http和http-server原理

    ???? websock改天研究下然后用node去搞. websock的实现原理. ##### 第9天的笔记内容. ## Header 规范 ## Http 状态码 - 101 webscoket 双 ...

  7. RJM8L151F6P6温度枪方案对比

    疫情当下,温度计.呼吸机.监护仪.制氧机等医疗产品的生产供应至关重要,红外温度计属于非接触式测温,它是利用物体热辐射与物体温度之间的关系来工作的. 红外测温仪是一种将红外技术与微电子技术相结合的新型温 ...

  8. HttpMessageNotReadableException

    HttpMessageNotReadableException 情况描述: spring boot web项目,尝试使用热部署工具. Controller只写了用来测试异常的方法, 异常处理器去捕获异 ...

  9. CSS选择器有哪几种?举例轻松理解CSS选择器

    CSS选择器汇总(清爽版) 1.元素选择器 标签名{ } 2.id选择器 #id属性值{ } 3.类选择器 ·class属性值{ } 4.选择器分组(并集选择器) 作用:通过它可以同时选中多个选择器对 ...

  10. 二次开发的Selenium Demo版本

    文件名你们自己命名就好,至于为什么要重写强制位移的函数呢,是因为Mac上Selenium不支持拖拽,只能这样做了,4个文件--------------------------------------- ...