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 本地存储无效
- 序言
- 开始
- 安装 RapPhp
- 应用目录
- 配置文件
- 入口类
- MVC架构
- 控制器基础
- 前置方法
- 拦截器
- 动态路由
- Request和Response
- Cookie和Session
- 模板引擎
- 请求缓存
- 流程图
- 数据库
- 基础使用
- 查询语法
- 查询操作
- where
- order
- limit
- lock
- fields
- join
- distinct
- having
- group
- force
- 查询方法
- 多数据源
- 数据库类型
- Record模型
- 使用Record
- 增删改
- 查找方法
- 数据类型
- 基本类型
- JSON 数据类型
- time
- date
- attach
- const
- 迭代操作
- record 更多方法
- 注入与转json
- 多级缓存
- 多数据源
- 模型生成
- 回调事件
- IOC控制反转
- Ioc基础概念
- 依赖注入
- Scope作用域
- 构造器
- 循环依赖
- AOP面向切面
- AOP使用
- 切面
- AopBuild
- 生成 aop 文件
- 事件勾子
- 执行循序
- Swoole
- Http服务器
- 用户进程
- Context上下文(重要)
- 协程
- 特色功能
- 限流器
- 连接池
- 数据库连接池
- Redis 连接池
- 通用连接池
- Rpc 远程调用
- Rpc服务提供方
- Rpc客户端
- 熔断器与服务降级
- Redis 分布式锁
- 其他功能
- 缓存
- redis
- 文件存储
- 存储简介
- 本地存储
- OSS存储
- 配置
- 日志
- 验证器
- FileUtil
- 数组Util
- Http工具
- 多语言
- 命令行
- 使用命令行
- 生成模型文件
- AOP动态文件生成
- swoole_http服务器
- 自定义命令行
- 异常与调试
- 异常抛出
- 异常处理
- 部署
- URL重写
- DOCKER 镜像(重要)
- 附录
- 回调事件
- 开发规范
- Swoole开发注意点
- 热点行更新排队机制
