Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Ciekawy problem -> liczenie $i z for
tara
post 29.03.2005, 20:37:41
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ć 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 ? ohmy.gif


--------------------
MySQL 4.0.15 | PHP 4.3.3 | Apache 1.3.28 | Kwrite | phpMyAdmin 2.5.6-rc1 | Linux MDK 10.1 pp
Go to the top of the page
+Quote Post
rogrog
post 29.03.2005, 21:29:33
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
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:49