# 驱动
## 说明
从之前的3.0,3.1版本中文件上传,sms短信发送,小票打印机书文件存放还是书写都比较随意,因此pro版本和3.2版本中修改成多驱动形式;
## 文件目录结构
```
├─crmeb CREMB核心类库
│ ├─services
│ │ ├─printer 打印机
│ │ ├─sms 短信
│ │ ├─template 模板消息
│ │ ├─upload 文件上传
```
## Template 使用方式
~~~
//以微信公众号小程序模板消息为驱动方式
$template = new Template('wechat');
$res=$template->to('送达人openid')->color('字体颜色')->url('跳转路径')->send('模板id编号',array [发送数据]);
if($res === false){
dump($res->getError());
}else{
dump('ok');
}
~~~
## 增加驱动
### 说明
这里以文件上传为例进行增加金山云文件上传,创建的文件名必须首字母大写
### 第一步,增加金山云上传驱动文件类 crmeb\services\upload\storage\Jinshan.php
~~~
<?php
namespace crmeb\services\upload\storage;
use crmeb\basic\BaseUpload;
class Jinshan extends BaseUpload
{
//实例化类
protected function initialize(array $config)
{
parent::initialize($config); // TODO: Change the autogenerated stub
}
// 实例化上传
protected function app()
{
// TODO: Implement app() method.
}
//上传文件
public function move(string $file = 'file')
{
// TODO: Implement move() method.
}
//上传流文件
public function stream(string $fileContent, string $key = null)
{
// TODO: Implement stream() method.
}
//删除文件
public function delete(string $filePath)
{
// TODO: Implement delete() method.
}
//获取上传密钥
public function getTempKeys()
{
// TODO: Implement getTempKeys() method.
}
}
~~~
### 增加上传配置 config/upload.php 每一个驱动都能增加单独的上传配置
~~~
return [
//默认上传模式
'default' => 'local',
//上传文件大小
'filesize' => 2097152,
//上传文件后缀类型
'fileExt' => ['jpg', 'jpeg', 'png', 'gif', 'pem', 'mp3', 'wma', 'wav', 'amr', 'mp4', 'key'],
//上传文件类型
'fileMime' => ['image/jpeg', 'image/gif', 'image/png', 'text/plain', 'audio/mpeg'],
//驱动模式
'stores' => [
//本地上传配置
'local' => [],
//七牛云上传配置
'qiniu' => [],
//oss上传配置
'oss' => [],
//cos上传配置
'cos' => [],
//金山云上传配置
'jinshan'=>[
'filesize'=>2097152,
'fileExt'=>['jpg'],
'fileMime'=>['image/jpeg'],
],
]
];
~~~
### 实例调用
~~~
$upload = new Upload('jinshan');
//validate 参数为数组如果不填写默认读取jinshan云的配置进行上传验证
$res = $upload->to('上传路径')->validate()->move();
if($res !== false){
//返回类型为对象
dump($res);
//可调用getUploadInfo来获取保存在附件表的详细信息
dump($upload->getUploadInfo());
//可调用getFileInfo来获取上传后返回的对象
dump($upload->getFileInfo());
}else{
//上传失败调用getError 获取错误信息
dump($upload->getError());
}
~~~
- 序言
- 系统简介
- 系统介绍
- 前端脑图
- 运行环境
- 安装流程
- URL重写
- 一键安装
- 手动安装
- window+phpstudy8 安装教程
- 定时任务
- 长链接
- 新手入门(源码安装)
- 服务器及系统搭建
- 服务器购买
- 域名购买(已有域名跳过)
- 域名解析
- 服务器配置
- 宝塔配置
- PHP扩展安装
- 创建站点
- 源码安装配置
- 程序安装
- 消息队列
- windows
- Linux宝塔
- Linux命令行配置
- https域名
- ssl证书申请
- https域名配置
- 注意事项
- 配置检查(非常重要)
- windows安装教程
- 公众号配置
- 公众号配置
- 公众号开发配置
- 公众号菜单
- 设置公众号菜单
- 关键字
- 跳转网页
- 跳转小程序
- uni-app 打包H5、公众号
- 小程序配置
- 1.微信平台配置
- 2.CRMEB后台配置
- 3.前端提交审核
- 4.确认发布
- 支付配置
- 支付配置
- 公众号支付
- 小程序支付
- 支付宝支付
- 其他配置
- 公众号模板消息
- 小程序订阅消息
- 公众号客服
- 小程序客服
- 小程序直播配置
- 短信设置
- 小票打印配置
- 客服配置详解
- 一号通配置
- 商业授权
- 授权说明
- 申请授权
- 前端说明
- 首页
- 分类页
- 个人中心
- 使用说明
- 页面跳转链接
- 商品分类
- 分类说明
- 分类管理
- 普通产品
- 发布商品
- 商品规格
- 商品评价
- 前台页面
- 产品属性
- 产品详情
- 产品热门搜索
- 分销规则
- 分销配置
- 佣金提现
- 分销员管理
- 分销规则说明
- 拼团
- 拼团规则
- 新建拼团活动
- 砍价
- 砍价规则
- 新建砍价活动
- 秒杀
- 秒杀规则
- 新建秒杀活动
- 优惠券
- 优惠券模板
- 发布优惠券
- 领取及使用
- 会员
- 会员等级说明
- 付费会员
- v 1.0
- 等级说明
- 会员升级
- 任务说明
- 积分
- 积分设置
- 积分来源
- 积分使用
- 提现
- 提现规则
- 发起提现
- 后台审核
- 新闻资讯
- 新闻页面
- 发布资讯
- 订单管理
- 后台订单处理
- 前端订单处理
- 订单退款
- 订单打印
- 客服订单提醒
- 二维码收银订单
- 订单配送
- 批量发货
- 账户管理
- 账号信息
- 账户资金
- 邮费说明
- 邮费组成
- 商城运费设置
- 运费模板
- 门店自提
- 开启门店自提
- 门店及店员管理
- 订单核销说明
- 配置说明
- 物流配置
- 文件上传配置
- pro库存说明
- 小程序直播
- 开启直播
- 直播使用说明
- 直播间管理
- 一号通
- 电子面单
- 短信
- 商品采集
- 物流查询
- 客服管理
- 客服添加
- 客服工作台
- 移动前端
- uni-app跳转路径
- App打包
- 1.基础配置
- 2.开发调试
- 3.打包上线
- 常见问题
- 客服消息发送失败
- 公众号重复无限刷新登陆
- 配置了小程序订阅消息不生效
- windows下点击workerman.bat文件闪退
- 多项目部署问题汇总
- 自动收货功能不生效
- 后台忘记密码
- 支付成功订单状态没改
- 小程序发布之后无法生成海报问题
- 安装首页数据库链接失败
- 技术文档
- 开发规范
- 目录结构
- 数据字典
- 移动端路由
- 事件
- 系统配置
- 系统常用函数
- 后台表单说明
- 驱动
- 后端路由
- 技术文档V1.1
- 开发规范
- 目录结构
- 数据字典
- 移动端路由
- 事件
- 系统配置
- 系统常用函数
- 后台表单说明
- 驱动
- 后端路由
- 定时任务
- 消息队列
- 付费采集
- 后台前端说明
- 后台前端
- 前端开发配置
- 前端配置说明
- 前端添加页面
- 前端引用组件
- 前端构建和发布
- 附录
- 升级指导
- 升级日志