У меня проблема с моей переменной внутри вложенного цикла foreach в php:
Моя переменная $ counter не сбрасывается в 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++;
}
?>
попробуй это.
<?php
foreach($loop1 as $x){
$counter = 1;
foreach($loop2 as $y){
if($counter==1){do something};
else {do something else};
$counter++;
}
}
?>
Других решений пока нет …