>>802
失礼のお詫びにサービス。

foreach はループ変数がグローバルである場合、自動的に変数の局所化を行う。対して while はそれをしない。
>>800 の「破壊」ってのはそれを指していると思われるけれど、うん、100% ネタということで。