版权声明:本人原创文章,转载时请保留所有权并以超链接形式标明文章出处 https://blog.csdn.net/qq_37138818/article/details/82425256
1.下载一个阿里云oss的sdk 也可以到阿里云 的OSS存储里面去下载
composer require aliyuncs/oss-sdk-php
2-去官方找些配置,在application同级目录的config目录里面新建一个alioss.php的文件,讲配置信息放进去向下面这样
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2018/8/3
* Time: 11:25
*/
// +----------------------------------------------------------------------
// | 阿里云OSS配置
// +----------------------------------------------------------------------
return [
'KeyId' => '', //Access Key ID
'KeySecret' => '', //Access Key Secret
'Endpoint' => '', //阿里云oss 外网地址endpoint
'Bucket' => '', //Bucket名称
];
3-控制器
public function uploadFile()
{
$file = request()->file('file'); //获取到上传的文件
print_r($this->uploadFileVideo($file));
}
public function ossUploadFile($file)
{
if ('' == $file) return '参数为空';
$resResult = Image::open($file);
// 尝试执行
try {
$config = Config::pull('alioss'); //获取Oss的配置
//实例化对象 将配置传入
$ossClient = new OssClient($config['KeyId'], $config['KeySecret'], $config['Endpoint']);
//这里是有sha1加密 生成文件名 之后连接上后缀
$fileName = 'img/' . sha1(date('YmdHis', time()) . uniqid()) . '.' . $resResult->type();
//执行阿里云上传
$result = $ossClient->uploadFile($config['Bucket'], $fileName, $file->getInfo()['tmp_name']);
/**
* 这个只是为了展示
* 可以删除或者保留下做后面的操作
*/
$arr = [
//图片地址
'imgurl' => $result['info']['url'],
//数据库保存名称
'dbimgName' => $fileName
];
} catch (OssException $e) {
return $e->getMessage();
}
//将结果输出
return $arr;
}
如整合期间有遇到什么问题 可以加群 858507220 一起讨论