P°i prßci s poli je velice Φastou operacφ pr∙chod celΘho pole a jeho zpracovßnφ. V PHP3 Ülo pr∙chod polem realizovat n∞kolika r∙zn²mi zp∙soby, kterΘ byly vφce Φi mΘn∞ elegantnφ. V PHP4 tyto problΘmy odpadajφ ù k dispozici je nov² p°φkaz foreach, kter² slou₧φ k postupnΘmu zpracovßnφ vÜech prvk∙ pole. Pro vypsßnφ vÜech prvk∙ pole $pole m∙₧eme pou₧φt nßsledujφcφ k≤d:
$pole = array(...); foreach ($pole as $hodnota) { echo $hodnota; }
M∙₧eme vyu₧φt i alternativnφ syntaxi, kterou znßme z ostatnφch p°φkaz∙ pro v∞tvenφ a cykly.
$pole = array(...); foreach ($pole as $hodnota): echo $hodnota; endforeach;
JednotlivΘ prvky pole jsou p°edßvßny jako hodnota a ne jako reference. Pokud chceme p°i pr∙chodu polem jednotlivΘ prvky pole modifikovat, musφme znßt i index jednotliv²ch prvk∙. K tomu m∙₧eme vyu₧φt drobn∞ modifikovanou podobu p°φkazu foreach.
$pole = array(...); foreach ($pole as $index => $hodnota) { echo $hodnota; // vytiskneme obsah prvku $pole[$index] = 100; // do prvku pole ulo₧φme hodnotu 100 }
P°φkaz foreach prochßzφ pole jen p°es jeden rozm∞r. Pokud chceme zpracovat vÜechny prvky vφcerozm∞rnΘho pole, musφme do sebe foreach n∞kolikrßt vno°it.