У меня проблема с моим переменным внутри вложенного цикла Еогеаспа в PHP:PHP итерация вложенного цикла Еогеаспа и установить переменную
Мой переменный $ счетчик не сбрасывается до 1 после того, как внутренний цикл выполняется. Я также попытался отключить ($ co unter) после внутреннего цикла, который тоже не имел никакого эффекта. Я знаю, что нет внутренней области в циклах foreach в php. Но я подумал, как только я установил $ counter = 1 после завершения внутреннего цикла, затем следующий внешний цикл и вместе с ним новый внутренний цикл должен начинаться с $ counter = 1 снова?
<?php
$counter = 1;
foreach($loop1 as $x){
foreach($loop2 as $y){
if($counter==1){do something};
else {do something else};
$counter++;
};
$counter = 1;
}
?>
Это фактический код:
<?php
$i=1;
foreach ($neu as $n) {
$gcount = 1;
echo'<div> </div>';
foreach ($gesendet as $g) {
if (($n["Quelle"] ==$g["Quelle"]) || ($n["Quelle"] ==$g["Ziel"])){
if ($gcount == 1){
echo nl2br("\n");
}
else {
echo'<div id="divtoggle">' .nl2br("\n")."at ".$g['Datum']." ". htmlspecialchars($g['username']). nl2br(" wrote: \n") ;
echo "\"".htmlspecialchars($g['Inhalt']). "\"" .nl2br("\n");
echo '</div>';
}
}
$gcount++;
}
unset($gcount);
echo '</div>';
$i++;
}
?>
Откуда вы знаете, что он не установлен в '1'? – zerkms
Потому что он не выполняет if ($ counter == 1) [сделать что-то} во время второй итерации через цикл 1, а затем цикл 2. Я также повторил счетчик $, и это только 1 на самой первой итерации. – user2929899
Предоставьте самосохраняющийся фрагмент кода, чтобы мы могли бежать и видеть его сами. Укажите статические определения для '$ loop1' и' $ loop2'. – zerkms