存储简介
RapPhp 对文件存储做了接口实现,可以用一套代码在不同存储方式上进行切换
控制器
可以在控制器中注入 File 对象
public function upload(File $file,$type='admin'){
$url=Storage::getStorage()->upload($file,$type);
//如果中途换文件驱动类型可以通过 type 字段控制
return ['url'=>Storage::getStorage()->getUrl($url)];
}
Storage
方法 | 简介 |
---|---|
upload | 上传文件 |
getUrl | 获取文件的可访问路径 |
getDomain | 获取文件存储的 domain |
getPicUrl | 获取图片地址 |
delete | 删除文件按 |
//返回一个name 数据存应该是 这个 name
$name=Storage::getStorage()->upload($file,$type);
//获取可以访问的路径 返回的就是 http://xxxx/xxxx/xxx.jpg
$url=Storage::getStorage()->getUrl($name);
//删除文件
Storage::getStorage()->delete($name);
获取图片地址
/**
* 获取图片可访问地址
* 如果是视频请返回视频的封面图片
* @param string $name 文件name
* @param int $width 宽
* @param int $height 高
* @param bool $water 是否水印
* @param int $crop 裁剪方法
* @param int $blur 模糊程度
* @return string
*/
public function getPicUrl($name,$width=0,$height=0,$water=false,$crop=self::resize_rect_in,$blur=-1);
其中crop
建议大家自己测试下各个效果
const resize_rect_out= 1; //常量,标识缩略图等比例缩放类型
const resize_rect_in=2; //常量,标识缩略图缩放后填充类型
const resize_fix_w=3; //固定宽
const resize_fix_h=4; //固定高
const resize_fix=6; //常量,标识缩略图固定尺寸缩放类型
可以参照 https://help.aliyun.com/document_detail/44688.html?spm=a2c4g.11186623.6.971.7QnIWD本地存储部分无效
blur 模糊 1-50 本地存储无效