foreach ($car['cartList'] as &$shop) {
}
// 这里不释放会影响下面的$shop ,因为引用无法再正常使用
unset($shop);

// 这里下面的循环$shop无法正常工作,因为上面$shop成为引用了
foreach ($car['cartList'] as $shop) {
}


&$item 要特别注意,遍历完必须马上 unset 否则就是一颗炸弹,对业务造成威胁,这种造成的业务错误往往很难排查!


    所以不关紧要的变量需要提早释放,这是一个好的习惯,必须严格遵守,不是因为获得最大性能,而是因为可以减少这种难以预见,将来潜在的错误。