Область переменной в for-loop и while-loop

Я новичок в PHP, я не понимаю, почему конечный результат кода ниже «233» вместо «231», а не $ a foreach – это временная переменная?

<?php $a = '1'; $c = array('2', '3'); foreach($c as $a){ echo $a ; } echo $a; ?> 

Может ли кто-нибудь помочь? Thks.

Обновлено 2014-11-28 Теперь я знаю, в чем была моя проблема. Как отметил принятый ответ и этот ответ , ни foreach ни while действуют как functions , они просто нормальные предложения, как $a='3'; , Итак, теперь я знаю, что это мое недоразумение, и речь идет не только о php , как я пытался в python, это то же самое.

 a = 123 b = [1, 2, 3] for a in b: print a print a 

Related of "Область переменной в for-loop и while-loop"