Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Nietypowe operacje na dwóch tablicach
Forum PHP.pl > Forum > Przedszkole
panic1
Z racji tego, iż jest to mój pierwszy post na forum: Cześć i czołem ;]

Problem mam następujący:
Powiedzmy, że istnieją dwie tablice:
Kod
Array
          (
              [wartosc_a] => 10
              [wartosc_c] => 9
              [wartosc_d] => 6
              [wartosc_b] => 6
          )

i:
Kod
Array
      (
              [wartosc_c] => 12
              [wartosc_a] => 1
              [wartosc_b] => 33
              [wartosc_d] => 2
          )


Mogą one mieć różne długości (np. w drugiej tablicy mógłby nie występować klucz [wartosc_a]).

Skrypcik, którego potrzebuję powinien wyciągać z obu tablic wartości dla tych samych kluczy (klucze oczywiście nie powtarzają się w tablicy) i obliczyć jaki procent sumy obu wartości stanowi wartość z pierwszej tablicy. Jeśli nie istnieje odpowiednik klucza z drugiej tablicy - w pierwszej tablicy -> kontynuować skrypt dalej, jeśli nie ma go w drugiej tablicy (a jest w pierwszej) procentowa wartość = 100%.

Starałem się opisać to najprościej jak potrafiłem, mam nadzieję, że pomożecie... mi już się wszystko miesza od tych tablic smile.gif .
Z góry dzięki za wszelką pomoc!
l0ud
Nie jestem pewien, czy do końca zrozumiałem, no ale winksmiley.jpg

  1. <?php
  2.  
  3. $values1 = array(
  4. 'klucz1' => 5,
  5. 'klucz2' => 6
  6. );
  7.  
  8. $values2 = array(
  9. 'klucz1' => 10,
  10. 'klucz3' => 5
  11. );
  12.  
  13. $results = array();
  14.  
  15. foreach ($values1 as $key => $value) {
  16. if (isset($values2[$key]))
  17. $results[$key] = $value*100/($value+$values2[$key]);
  18. else
  19. $results[$key] = 100;
  20. }
  21.  
  22. print_r($results);
  23.  
  24. ?>
panic1
Foreach... czemu ja na to nie wpadłem biggrin.gif.

Man jesteś wielki. Zdaje się, że działa. Dzięki! ;]
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.