- //阿里云oss配置
- 'ALIOSS_CONFIG' => array(
- 'KEY_ID' => 'iBrefsppuS5xSSCh', // 阿里云oss key_id
- 'KEY_SECRET' => 'LLFZpOXifibBHTjPFhNZbmU3roSCc2', // 阿里云oss key_secret
- 'END_POINT' => 'http://oss-cn-qingdao.aliyuncs.com', // 阿里云oss endpoint
- 'BUCKET' => 'yunhezc' // bucken 名称
- ),
很多朋友不知道 KEY_ID KEY_SECRET 从哪里获取,如下图:
如何你也不知道END_POINT 从哪里获取,查看这里 https://help.aliyun.com/document_detail/31837.html?spm=5176.2020520105.147.4.C6B4T9
thinkphp function.php公共函数里面添加如下代码:
- /**
- * 实例化阿里云oos
- * @return object 实例化得到的对象
- */
- function new_oss(){
- vendor('Alioss.autoload');
- $config=C('ALIOSS_CONFIG');
- $oss=new \OSS\OssClient($config['KEY_ID'],$config['KEY_SECRET'],$config['END_POINT']);
- return $oss;
- }
- /**
- * 上传文件到oss并删除本地文件
- * @param string $path 文件路径
- * @return bollear 是否上传
- */
- function oss_upload($oss_path,$content){
- // 获取配置项
- $bucket=C('ALIOSS_CONFIG.BUCKET');
- // 实例化oss类
- $oss=new_oss();
- // 上传到oss
- $oss->putObject($bucket,$oss_path,$content);
- return getUrl($oss_path);
- }
- function getUrl($path){
- if(emptyempty($path)){
- return '';
- }
- $bucket=C('ALIOSS_CONFIG.BUCKET');
- return 'http://'.$bucket.'.oss-cn-qingdao.aliyuncs.com'.'/'.$path;
- }
- /**
- * 删除oss上指定文件
- * @param string $object 文件路径 例如删除 /Public/README.md文件 传Public/README.md 即可
- */
- function oss_delet_object($object){
- // 实例化oss类
- $oss=new_oss();
- // 获取bucket名称
- $bucket=C('ALIOSS_CONFIG.BUCKET');
- $test=$oss->deleteObject($bucket,$object);
- }
使用方法如下:
- $ext = '.png';
- $save_name = date('Ymd').uniqid() . $ext;
- $url = oss_upload($save_name,base64_decode($v));
这样就可以了.
阿里云oss SDK 下载地址:点击这里