二次开发规范
数据库
- 全部使用 PDO 预处理语句,杜绝 SQL 注入
- 新增数据表建议以
nq_业务前缀命名(建表时自行加前缀即可)
安全
- 输出一律使用
e()转义,防止 XSS - 表单必须包含
csrf_field()并在处理前调用csrf_check() - 密码使用
password_hash()/password_verify()
支付接入
订单系统内置演示支付(demo 模式)。接入微信支付/支付宝时,在 ShopController::pay() 中将演示逻辑替换为真实支付下单,并在回调中执行:
// 标记订单已支付
DB::update orders set status='paid', paid_at=now()
// 触发钩子,供插件响应支付事件
$params = ['order' => $order];
hook('order_paid', $params);