Tatizo la Mabano Yenye Maumbo Katika Vitendo vya Kurudia katika PHP
Ingawa katika vitendo vya kurudia inawezekana kuacha mabano yenye maumbo, ninaapenda sana kufanya hivyo, kwani code kama hiyo mara nyingi husababisha makosa.
Tuangalie kwa mfano. Hebu tuseme tuna code ifuatayo:
<?php
for ($i = 0; $i <= 9; $i++)
echo $i; // inatoa nambari kutoka 0 hadi 9
?>
Nitaingiza marekebisho madogo katika code iliyotajwa hapo juu (tafuta ni yapi) - na haitaendelea kufanya kazi:
<?php
for ($i = 0; $i <= 9; $i++);
echo $i; // itatoa 10
?>
Basi, ni nini nilichorekebisha?
Tatizo lilitokea kwa sababu niliweka
alama ya nukta mkato baada ya mabano ) kutoka
kwenye kitendo cha kurudia. Katika hali kama hiyo itatokea kinachojulikana kama
kitenzi cha kurudia kisicho na mwili: kitazunguka tu
ndani, na mstari unaofuata hautakuwa
ukihusiana nayo. Kwa hivyo, ili kuepuka matatizo,
ninapendekeza kila wakati kuweka mabano yenye maumbo
katika vitendo vya kurudia.
Eleza, matokeo yatakuwa yapi kutokana na utekelezaji wa code ifuatayo:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem);
echo $elem;
?>