foreach ($log['data'] as $k => &$value) { if ($value['token'] != 0) { $value['change_num'] = $value['token'] . ' [token]'; } else { $value['change_num'] = $value['money'] . ' [money]'; } unset($value['money']); unset($value['token']);}$info['logInfos'] = $log['data'];foreach ($log['other'] as $key => $value) { if ($key == 'log_action') { $info['action'] = $value; }}由于之前$log['data']循环使用了 $value 的引用变量,导致$log['other']循环时再次使用 $value 变量抹去了$log['data'] 的最后一个元素的信息所以循环使用到引用变量时,下面的循环记得更换循环变量,不要叫同一个名字。