Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 0 Dołączył: 30.06.2010 Ostrzeżenie: (10%)
|
Jak w PHP wywołać jakąś pętlę, która będzie wykonywała się tak długo, aż jakiś warunek zwróci TRUE?
Powiedzmy, że mam zmienną $output, która musi dać TRUE i wtedy wykona się jakaś tam operacja, a pętla po wykonaniu operacji się przerwie. Jeśli zmienna $output nie zwróci TRUE to pętla wykonuje się od zera (conitnue), tak długo aż zmienna zwróci TRUE. Mógłbym to zrobić np. tak:
ale to jest takie prymitywne rozwiązanie, że wolałbym go uniknąć. Jest w PHP coś co nada się w sam raz do opisanej przeze mnie sytuacji? Dzięki. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 36 Dołączył: 9.04.2003 Skąd: Płock Ostrzeżenie: (0%)
|
do {} while ()
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 0 Dołączył: 30.06.2010 Ostrzeżenie: (10%)
|
Jak powinna wyglądać konstrukcja tej pętli w tym wypadku?
|
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 36 Dołączył: 9.04.2003 Skąd: Płock Ostrzeżenie: (0%)
|
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 555 Pomógł: 84 Dołączył: 20.02.2008 Skąd: Małopolska Ostrzeżenie: (0%)
|
Każda pętla się do tego nada, ponieważ to co opisałeś to właśnie przypadek użycia pętli... Ludzie, choć trochę asertywności, naprawdę.
Kod for ($ouput = false; $output !== true; ) { $output = doSmth(); } Kod $output = false; while ($output !== true) { $output = doSmth(); } Kod do {
$output = doSmth(); } while($output !== true); Ten post edytował Skie 22.03.2015, 14:12:32 |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 0 Dołączył: 30.06.2010 Ostrzeżenie: (10%)
|
Rozumiem, że w do {} mam wklepać ten warunek, który określi czy $output to TRUE czy FALSE, a while będzie się wykonywało tak długo aż $output zwróci wreszcie TRUE, jeśli zwróci true to też się wykona po czym cała pętla się zakończy, tak? |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 36 Dołączył: 9.04.2003 Skąd: Płock Ostrzeżenie: (0%)
|
Dostałeś gotowca na tacy, w 2 postach w 3 wersjach, odpal to z łaski swojej i przetestuj.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 23.12.2025 - 00:35 |