mirror of
https://github.com/crmeb/CRMEB.git
synced 2026-10-28 13:31:04 +00:00
PHP 8 bcmath 函数要求字符串参数,会员支付链路 8 处传入 int 导致 TypeError:abs() 返回 int、86400/time() 为 int 字面量与返回值。 统一 (string) 强转,覆盖订单创建(checkPayMemberType)、支付成功 (setMemberOverdueTime)、到期时间接口(getOverdueTime)、卡密激活 (drawMemberCard)四条路径;postMore 的 type/price 默认值同步改为 字符串,防止漏传时命中同一严格类型声明。
crmeb/app/api目录是网站前端(非管理后台)的API接口目录。
它与adminapi目录的区别在于:
- adminapi目录下的是管理后台系统的API接口
- api目录下的是网站前端系统(手机端/微信小程序/H5等)的API接口
具体来说:
- api目录下也是采用控制器(Controller)方式组织接口代码
- 每个控制器对应一个功能模块,如OrderController负责订单相关接口等
- 接口用于前端页面的ajax请求,获取数据用于渲染
- 接口也采用RESTful风格设计
例如:
- 用户注册接口在UserController的register方法
- 获取订单列表在OrderController的lists方法
- 支付结果通知在PayController的notify方法
和adminapi目录一样,api目录也通过定义清晰的接口,解耦了前后端,让前端更专注于业务展示。
区别在于目标用户不同:
- adminapi为后台管理员使用
- api目录下的接口为前台用户(手机端、小程序端等)提供数据服务
所以二者都起到了前后端分离的关键作用。