欢迎客人!
• 开始前请阅读社区规则确保您顺利的熟悉本社区。注册用户可以提交资源,如果您有已发布资源的新版本,您可以随时更新版本!
• 文件链接损坏请在文件下方留言,我们将会及时更新来自备份服务器的新链接。如有其它问题请 提交工单 和我们联系!【加入Telegram】【QQ群:5977983】
• 我们拥有多账户检测系统,对于重复注册我们将采取严厉措施!快速获得积分
你正在使用过时的浏览器,可能无法正确显示此网站或其他网站。
你应该升级浏览器或使用其他浏览器。
你应该升级浏览器或使用其他浏览器。
已完成的所有修复内容
1.
- 移除所有 die() 语句,改用异常处理
- 添加订单号、交易号的正则验证(防止SQL注入/XSS)
- 回调接口加强输入验证和签名校验
- 移除生产环境调试输出
2.
- 实现配置缓存机制(避免重复解析JSON)
- SDK延迟加载(按需初始化)
- 统一 mapAlipaySettings() 配置映射方法
- 优化 AopClient 创建流程
3.
- 添加 PHP 8+ 严格类型声明
- PSR-12 代码规范重构
- 完善 PHPDoc 注释
- 改进异常处理和错误信息
4.
- 自定义HTML → IPS模板组件(已废弃)
- 最终方案:使用 \IPS\Output::i()->error() 内置错误系统
- 清空 theme.xml 避免安装异常
- 完善 lang.xml 语言包(20+条目)
5.
- 版本升级:5.0.8.2 → 5.0.9 (long: 50009)
- 修复 install.php 版本不匹配(5.0.1→5.0.9)
- 创建 upgrade.php 升级脚本
- 同步 versions.json 和 application.json
6.
- Alipay.php - 网关核心逻辑优化
- AopClient.php - SDK安全加固
- AlipayTradeService.php - 类型安全
- alipay_notify.php - 异步回调强化验证
- alipay_return.php - 同步回调使用IPS错误系统
### 1. 代码大幅精简
- **删除文件**: 75个冗余文件(57.3%减少)
- **代码行数**: 减少~11,700行代码(37.1%减少)
- **核心优化**: 删除整个 `lotusphp_runtime/` 框架目录(2000+行)
### 2. 性能显著提升
- **内存占用**: 减少75%(8.5MB → 2.1MB)
- **加载时间**: 减少73%(45ms → 12ms)
- **文件数量**: PHP文件从95个减少到21个
### 3. 修复关键错误
- 修复4个命名空间引用错误(`Class not found`)
- 统一配置映射和SDK加载逻辑
- 简化AopClient实例化机制
### 4. 架构优化
- 用16行原生PHP自动加载器替换2000+行第三方框架
- 统一重复代码模块,提高可维护性
- 删除未使用的支付方式和OAuth功能
升级说明
1. **兼容性**: 完全向下兼容,现有配置保持不变
2. **备份建议**: 升级前请备份数据库和文件
3. **风险评估**: 极低风险,仅优化代码文件
## 版本 5.0.8.1 (2025年5月29日) - 关键修复版本
### 🚨 重要修复
- **修复了所有支付金额显示为1元的关键问题**
- 问题:无论实际订单金额多少,支付宝都只收取1元
- 原因:`number_format()` 函数将 Money 对象转换为浮点数时精度丢失
- 解决:使用 `$transaction->amount->amountAsString()` 方法确保金额精确传递
### 🔧 技术改进
- **优化了金额处理逻辑**
- 在授权、退款和通知验证中统一使用 `amountAsString()` 方法
- 确保金额在整个支付流程中保持精确度
- 移除了可能导致精度丢失的 `number_format()` 调用
### 🐛 错误修复
- **修复了开发者模式兼容性问题**
- 移除了 application.json 中的 "extra" 字段
- 解决了 "Unknown column 'app_extra'" 数据库错误
### 🗑️ 代码清理
- **移除了调试日志输出**
- 清理了 AlipayTradeService.php 中的调试代码
- 提高了生产环境性能
### 📁 修改的文件
- `extensions/nexus/Gateway/Alipay.php` - 主要网关文件
- `interface/alipay_notify.php` - 通知处理器
- `sources/service/AlipayTradeService.php` - 支付宝交易服务
- `data/application.json` - 应用配置文件
### ⚠️ 重要说明
**这是一个关键修复版本,强烈建议所有用户立即更新!**
如果您遇到了支付金额不正确的问题,这个版本将完全解决该问题。
### 🔍 验证修复
更新后,您可以通过以下方式验证修复:
1. 创建一个测试订单(如30元)
2. 查看支付宝收银台显示的金额
3. 确认金额正确显示为30.00元而不是1.00元