Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ciekawy problem -> liczenie $i z for
tara
post
Post #1





Grupa: Zarejestrowani
Postów: 147
Pomógł: 0
Dołączył: 3.03.2004
Skąd: śląsk

Ostrzeżenie: (0%)
-----


Witam,

  1. <?php
  2. for($i=1; $i <= $ilosc_okolicznych; $i += 1) {
  3. $sciezka = ${sciezka_okolicznosc.$i};
  4.  
  5. ${ilosc.$i} = count(glob(&#092;"galeria/\".$sciezka.\"/*.jpg\"));
  6.  
  7.  print &#092;"${ilosc.$i}\";
  8. }
  9.  
  10. ?>

Oto kod który zlicza pliki w określonych folderach. Chciałbym żeby wszystkie wartości ${ilosc.$i} były dodane. Tylko nie wiem jak to zrobić (IMG:http://forum.php.pl/style_emoticons/default/blink.gif) . Problemu by nie było, gdyby zmienna $ilosc_okolicznych była określona, np. 4. Wtedy bym zrobił to tak:
  1. <?
  2. $a = $ilosc1+$ilosc2+$ilosc3+$ilosc4;
  3.  
  4. ?>

Jednak jak to zrobić kiedy $ilosc_okolicznych nie jest podana ? (IMG:http://forum.php.pl/style_emoticons/default/ohmy.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
rogrog
post
Post #2





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $suma = 0;
  3.  
  4. for($i=1; $i <= $ilosc_okolicznych; $i += 1) {
  5. $sciezka = ${'sciezka_okolicznosc'.$i};
  6.  
  7. ${ilosc.$i} = count(glob(&#092;"galeria/\".$sciezka.\"/*.jpg\"));
  8. $suma += ${ilosc.$i};
  9. print ${'ilosc'.$i};
  10. }
  11.  
  12. ?>


tak na marginesie używanie zmiennych zmiennych wg mnie wprowadza bałagan w kodzie i utrudnia zmiany. Nie wiesz tak na prawdę jaki zmienne zapisuje Twój kod. Może powodować trudne do wykrycia pomyłki w kodzie itd.

Nie spotkałem się z przypadkiem w którym nie mogły by być zastąpione przez tablice.

np. Twój kod

  1. <?php
  2. $suma = 0;
  3.  
  4. $sciezka_okolicznosc = Array('sciezka1', 'sciezka2');
  5. $ilosc = Array();
  6.  
  7. for($i=1; $i <= $ilosc_okolicznych; $i += 1) {
  8. $ilosc[$i] = count(glob(&#092;"galeria/\".$sciezka_okolicznosc[$i].\"/*.jpg\"));
  9. $suma += $ilosc[$i];
  10. print $ilosc[$i];
  11. }
  12. //albo jeszcze lepiej z foreach
  13. foreach($sciezka_okolicznosc as $sciezka) {
  14. $ilosc[$i] = count(glob(&#092;"galeria/\".$sciezka.\"/*.jpg\"));
  15. $suma += $ilosc[$i];
  16. print $ilosc[$i];
  17. }
  18.  
  19. ?>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 10:50