composer安装包
composer require mrwanghongda/oss-sdk -vvv
封装oss方法
<?php
namespace App\Aliyun;
use Mrwanghongda\OssSdk\config\OssConfig;
use Mrwanghongda\OssSdk\OssFactory;
class OSS{
public static function setOssFile($file)
{
//采用阿里云的oss
$accessKeyId = config('accessKeyId'); //自己的ak
$accessKeySecret = config('accessKeySecret');//自己sk
// Endpoint以上海为例,其它Region请按实际情况填写。
$region = "http://oss-cn-shanghai.aliyuncs.com";
// 填写Bucket名称,例如examplebucket。
$bucket= "examplebucket";
$config = new OssConfig($accessKeyId, $accessKeySecret, $region);
$ossObj = (new OssFactory(OssFactory::OSS_ALIYUN))->getOssService();
$ossObj->init($config)->bucket($bucket);
// 上传文件
$filePath = date('Y/m/d H:i:s').'.jpg';
$result = $ossObj->put($filePath, $file);
return $filePath;
}
}
在自己的控制器进行调用
public function createBargainGoods(request $request)
{
$data = $request->except('_token','bargain_img');
$file = $request->file('bargain_img')->getPathname();
$filename = OSS::setOssFile($file);
//拼接自己的阿里云路径
$data['bargain_img'] = 'https://tianfuquan.oss-cn-shanghai.aliyuncs.com'.'/'.$filename;
$res = Bargain::create($data,true);
if ($res){
return ['code'=>200,'msg'=>'添加成功!','data'=>null];
}
}