Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wykluczenie z pętli jednej zmiennej
Forum PHP.pl > Forum > PHP
Majkelo23
Jak wykluczyć z pętli jedną zmienną, aby zachowywała się tak jakby w ogóle nie była w pętli:

  1. $tabb = $row['reg_key'];
  2.  
  3. for($x = 1; $x <= $sum; $x++)
  4. {
  5. $font = $fonts[array_rand($fonts)];
  6.  
  7. $suma = (round(imagesx($background) / $sum+1)-12)*($x-1)+20;
  8.  
  9. imagettftext(
  10. $background,
  11. rand(20, 30),
  12. rand(-15, 15),
  13. $suma,
  14. rand(40, 60),
  15. $color,
  16. $font,
  17. $tabb // TO TA ZMIENNA
  18. );
  19. }


$tabb // TO TA ZMIENNA - jakieś sugestie?
thoriam
nie bardzo wiem o co ci chodzi ale jeśli chcesz wykluczyć jakąś zmienną z pętli to wal
  1. if($tabb=='jakaś wartość')

albo w przypadku gdy chcesz wykluczyć z danego przebiegu pętli
  1. if($x=='jakaś wartość')
tolomei
Może napisz co chcesz osiągnąć tym "wykluczeniem" to będzie łatwiej Ci pomóc.
vokiel
  1. for($x = 1; $x <= $sum; $x++){
  2. if ($x === $jakas_wartosc ){
  3. continue; //
  4. }
  5. // reszta tak jak było
  6. }
mortus
@Majkelo23: Przecież nie możesz tej zmiennej wykluczyć, bo jest ona jednym z argumentów funkcji imagettftext(). Swoją drogą chyba nie ta zmienna powinna nią być, a jej część, a dokładniej jeden znak, tylko zastanawia mnie, czym jest zmienna $sum.

Rozumiem, że w pętli losujesz pozycję dla znaku z kodu rejestracyjnego i chcesz ten znak "wydrukować", zatem pętla powinna wyglądać tak:
  1. for($i = 1; $i <= strlen($tabb); $i++) {
  2. $znak = substr($tabb, $i-1, 1); // $znak = $tabb[$i-1] też powinno zadziałać
  3. // tutaj wszystkie obliczenia, uzależnione od liczby znaków kodu rejestracyjnego, choć niekoniecznie
  4. imagettftext(
  5. $background,
  6. rand(20, 30),
  7. rand(-15, 15),
  8. $suma,
  9. rand(40, 60),
  10. $color,
  11. $font,
  12. $znak
  13. );
  14. }
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.