作者:陈业贵 华为云享专家 51cto(专家博主 明日之星 TOP红人) 阿里云专家博主


阿里云oss存储是得买的。买后,还要获取参数。填入代码中就可以啦

https://www.aliyun.com/search?spm=5176.19720258.J_3207526240.21.7b8176f4QOLmVV&scene=all&k=%E5%AF%B9%E8%B1%A1%E5%AD%98%E5%82%A8oss

在这里插入图片描述

获得四个参数:
$accessKeyId
$accessKeySecret
$endpoint
$bucket
不然不对了哈

前言

告诉你怎么做阿里云OSS存储.

composer require aliyuncs/oss-sdk-php

代码(index.php)

<?php
namespace app\admin\controller;
use OSS\OssClient;
use OSS\Core\OssException;
class Index 
{
	/*
	 * 图片上传,将图片上传至阿里云oss
	 * */
	public function index(){
		
	    $files = $_FILES['file'];
	    $name = $files['name'];
	    $format = strrchr($name, '.');//截取文件后缀名如 (.jpg)
	    // 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录RAM控制台创建RAM账号。
	    $accessKeyId = "";
	    $accessKeySecret = "";
	    // Endpoint以杭州为例,其它Region请按实际情况填写。
	    $endpoint = "";
	    // 设置存储空间名称。
	    $bucket= "";
	    // 设置文件名称。
	    //这里是由sha1加密生成文件名 之后连接上文件后缀,生成文件规则根据自己喜好,也可以用md5
	    //前面video/head/ 这是我的oss目录
	    $object = 'video/head/'.sha1(date('YmdHis', time()) . uniqid()) . $format;;
	    // <yourLocalFile>由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt。
	    $filePath = $files['tmp_name'];
	    try{
	        $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
	
	        $result = $ossClient->uploadFile($bucket, $object, $filePath);
	        if(!$result){
	            return json(['status'=>1,'message'=>'上传失败']);
	         }else{
	            return json(['status'=>2,'message'=>'上传成功','url'=>$result['info']['url']]);
	        }
	    } catch(OssException $e) {
	        printf(__FUNCTION__ . ": FAILED\n");
	        printf($e->getMessage() . "\n");
	        return;
	    }
	    print(__FUNCTION__ . ": OK" . "\n");
	 }
	 }

postman

在这里插入图片描述

阿里云:

在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐