Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wykonanie dodatkowego kodu co trzy akcje
Forum PHP.pl > Forum > Przedszkole
karakara
Witam,

szukam innego rozwiązania niż dziś mi wpadło.

Chciałbym co trzecią akcje wykonać dodatkowy kod.
W każdym obrocie pętli wykonujemy conajmnie jedną akcję (echo 'X')
Dodatkowo jeżeli jest to 0 1 lub 2 elemnt tablicy możemy (ale nie musimy dlatego w przykładzie dodałem losowość) wykonać akcję dodatkową.
Każda dodaktowa akcja zwiększa licznik $i przez co po pierwszym przejściu pętli mam 2 później późnie już 4 dlatego dodatkowy kod się nie wykona przy i$ == 3;
Jedyne co dziś wymyślam to wlasna funkcja zwiekszania licznika która od razu sprawdza czy % 3 == 0.

Ale możę jakoś inaczej się to da ?
Poniżej kod który nei działa poprawnie
  1. $i = 0;
  2. foreach(range(0, 10) as $k)
  3. {
  4. $i++;
  5.  
  6. echo 'X'; //czynnosc standardowa zawsze wykonywana
  7.  
  8. if ($k == 0 AND rand(1,1) == 1) {
  9. echo 'A'; // zrob cos dodatkowego
  10. $i++;
  11. }
  12. elseif ($k == 1 AND rand(1,1) == 1) {
  13. echo 'B'; // dodatkowa
  14. $i++;
  15. }
  16. elseif ($k == 2 AND rand(1,5) == 1) {
  17. echo 'C';
  18. $i++; // dodatkowa
  19. }
  20.  
  21.  
  22. if ($i % 3 == 0)
  23. echo '!!3!!'; // wyswietl cos tam tego nie liczymy jako akcja
  24.  
  25. }
  26.  
  27.  
Greg0
Mam pytanie dlaczego każda dodatkowa opcja zwiększa licznik? Jest to czymś uzasadnione?
com
coś takiego http://ideone.com/wBjy1e ?

Bo zwiększasz dla 0 1 2 $i podwójnie wink.gif wiec dlatego nie ma 3 wink.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.