根本原因:\think\facade\Db::name('order_detail')->select() 返回懒加载的 Query 对象,
每次 foreach 迭代都重新执行 SELECT,返回全新的 Collection。
第一 foreach 解析 spec 并写入 _parsed_* 到 Collection A,
第二 foreach 迭代的是 Collection B(全新干净数据),
导致 _parsed_seat_info 永远为空,票数据丢失。
修复:加 ->toArray() 强制物化一次,两个 foreach 操作同一份数组。
同时补票:order 10 (票26,27)、order 12 (票28)、order 13 (票25)。
|
||
|---|---|---|
| .. | ||
| admin | ||
| api | ||
| index | ||
| install | ||
| lang | ||
| module | ||
| plugins | ||
| route | ||
| service | ||
| tpl | ||
| AppService.php | ||
| BaseController.php | ||
| ExceptionHandle.php | ||
| Request.php | ||
| common.php | ||
| event.php | ||
| middleware.php | ||
| provider.php | ||
| service.php | ||