while продължаване на стойността

BattleGrounds

Registered
имам примерно цикъл
$i=1;
while(){


$i++;
}
Как мога да направя втори циъкл след този да продъжлава от същата стойност от която е стигнал първия цикъл $i
ТОест ако цикъла се е завъртял 10 пъти $i ще е станало 10
И искам да направя още еидн след него но $i Да започва от 11 тоест с едно по голямо
 
Не смисълт исках да кажа е че незнам колко пъти ще се върти цикала.... всеки път ще е различно и искам да взима стойноста до която е стигнал първия и да почва от следващото число
 
Би трябвало стойността на $i след последното завъртане да е тази, която ти трябва и си продължаваш с нея във втория цикъл
 
Ами то си я взима. Единствено условието за втория цикъл ще трябва да го смениш примерно така:

<?php
$i = 1; // Задаваш начална стойност на първия цикъл
$end = 20; //Задаваш крайна стойност на първия цикъл (може всяко число, никакво значение няма).
while($i<$end) {
echo $i . "<br />";
$i++;
}
$end = $i + 10; //Задаваш крайна стойност на втория цикъл да е равна на последната итерация на първия + 10
while($i<$end) {
echo $i . "<br />";
$i++;
}
?>

Така вторият цикъл ще прави 10 завъртания над стойността, при която е завършил първия цикъл. Краят на първия цикъл може да е което число ти си решиш. Просто оказваш на втория цикъл фиксиран брой завъртания (10).

Ето ти и същия пример, но малко по-динамично, за да видиш точно какво се случва:

<?php
$i = 1; // Задаваш начална стойност на първия цикъл
$end = intval($_GET['end']); //Задаваш крайна стойност на първия цикъл (може всяко число, никакво значение няма).
while($i<$end) {
echo $i . "<br />";
$i++;
}
echo "Край на цикъл 1<br />";
$end = $i + 10; //Задаваш крайна стойност на втория цикъл да е равна на последната итерация на първия + 10
while($i<$end) {
echo $i . "<br />";
$i++;
}
?>

Ако стартираш скрипта през index.php, той ще изпълни само втория цикъл, защото няма зададена стойност за end на първия, но ако го стартираш така: index.php?end=20, ще видиш, че първия цикъл ще се изпълни от 1 до 19, а втория ще започне от 20 до 29.

За да ти стане напълно ясно стартирай скрипта няколко пъти така:
index.php?end=0 - Ще започне изпълнението на втория цикъл, защото първия просто няма да се изпълни защото $i не е по-малко от $end
index.php?end=1 - Пак само втория цикъл, защото $i не е по-малко от $end

index.php?end=2
index.php?end=3
index.php?end=4
index.php?end=5
...
index.php?end=n - където n е някакво число. :)
 

Back
Горе