A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

首先利用tp5composer机制去下载一个阿里云oss的sdk

composer require aliyuncs/oss-sdk-php

然后,去官方找些配置,在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名称



  • ];


然后就可很简单了,新建一个控制器,在你的控制器里面接到图片,最好用tp5自带的接图片的方法



  •     public function uploadFile()



  •     {



  •         $file = request()->file('file');  //获取到上传的文件



  •         print_r($this->uploadFileVideo($file));



  •     }


最好就是阿里云oss去处理图片了



  •     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;



  •     }





【转载】        https://blog.csdn.net/WKissa/article/details/81698778


2 个回复

倒序浏览
奈斯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马