Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Probelm z tablicami...
kamilos12
post 24.03.2012, 22:40:51
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 20.03.2010

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


Witam, mam 2 tablice:
Pierwsza ma np. takie wartości:
  1. [0] => 2012-03-24
  2. [1] => 2012-03-24
  3. [2] => 2012-03-24
  4. [3] => 2012-03-24
  5. [4] => 2012-03-24
  6. [5] => 2012-03-24
  7. [6] => 2012-03-24
  8. [7] => 2012-03-24
  9. [8] => 2012-03-24
  10. [9] => 2012-03-24
  11. [10] => 2012-03-23
  12. [11] => 2012-03-23
  13. [12] => 2012-03-23
  14. [13] => 2012-03-23
  15. [14] => 2012-03-23
  16. [15] => 2012-03-23
  17. [16] => 2012-03-23
  18. [17] => 2012-03-22
  19. [18] => 2012-03-22
  20. [19] => 2012-03-22
  21. [20] => 2012-03-22


a druga natomiast:

  1. [0] => 1.64
  2. [1] => 1.64
  3. [2] => 1.64
  4. [3] => 1.64
  5. [4] => 1.64
  6. [5] => 1.64
  7. [6] => 1.64
  8. [7] => 1.64
  9. [8] => 1.64
  10. [9] => 1.64
  11. [10] => 1.64
  12. [11] => 1.64
  13. [12] => 1.64
  14. [13] => 1.64
  15. [14] => 1.64
  16. [15] => 1.64
  17. [16] => 1.64
  18. [17] => 1.64
  19. [18] => 1.64
  20. [19] => 1.64
  21. [20] => 1.64


Dodam że tablice sobie odpowiadają tzn. 2012-03-24 - 1.64 itd.

Chciałbym pobrać sumę liczb z drugiej tablicy dla każdej z dat, np. 2012-03-24 - 16.40

Pozdrawiam i proszę o pomoc wink.gif
Go to the top of the page
+Quote Post
kkpre
post 25.03.2012, 00:13:17
Post #2





Grupa: Zarejestrowani
Postów: 26
Pomógł: 5
Dołączył: 19.03.2012

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


  1. <?
  2. $arr = array('0' => '2012-03-24',
  3. '1' => '2012-03-24',
  4. '2' => '2012-03-24',
  5. '3' => '2012-03-24',
  6. '4' => '2012-03-24',
  7. '6' => '2012-03-23',
  8. '7' => '2012-03-23',
  9. '8' => '2012-03-23',
  10. '9' => '2012-03-23',
  11. '10' => '2012-03-23');
  12.  
  13. $arr2 = array('0' => 1.64,
  14. '1' => 2.64,
  15. '2' => 3.64,
  16. '3' => 4.64,
  17. '4' => 5.64,
  18. '6' => 6.64,
  19. '7' => 7.64,
  20. '8' => 8.64,
  21. '9' => 9.64,
  22. '10' => 10.64);
  23.  
  24.  
  25. foreach($arr as $nr => $val){
  26. $arr3[$arr[$nr]] = $arr3[$arr[$nr]]+$arr2[$nr];
  27. }
  28.  
  29.  
  30. echo "<pre>";
  31. var_dump($arr3);
  32. echo "</pre>";
  33.  
  34. ?>


wynik:
Kod
array(2) {
  ["2012-03-24"]=>
  float(18.2)
  ["2012-03-23"]=>
  float(43.2)
}


Tworzy 3 tablice i po kolei dodaje wartości do odpowiedniej daty, a więc wywołanie echo $arr3["2012-03-23"] zwróci sumę wszystkich wartości $arr2 dla tego dnia.

Oczywiscie nie może być żadnych cudzysłowów przy wartościach drugiej tablicy, bo żeby dodawać liczby z przecinkiem to musi być jako float, a po dodaniu cudzysłowów skrypt traktowałby to jako string.

Dałem przykładowo inne wartości w drugiej tablicy i troche mniej ich zrobiłem bo nie chciało mi sie robić 20 tongue.gif

Ten post edytował kkpre 25.03.2012, 00:14:15
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: 18.07.2025 - 04:20