Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Część wspólna w tablicy
Forum PHP.pl > Forum > Przedszkole
slawek3422
Witam.

Mam pewien problem, którego nie potrafię rozwiązać nawet z pomocą wujka Google'a.

Posiadam tablicę, której liczba kluczy jest dynamiczna, ale załóżmy, że wygląda ona następująco :

  1. (
  2. [0] => 4, 6, 5
  3. [1] => 4, 5, 6, 10, 13, 17, 18, 19, 20, 21, 26, 27, 29, 40, 42, 48, 58, 59, 70
  4. [2] => 4, 5, 6
  5. [3] => 4, 5, 6, 10, 14, 17, 18, 19, 20, 21, 40, 42, 47, 51, 57, 70
  6. )


Potrzebuję z tych zbiorów wyciągnąć część wspólną czyli 4,5,6.
W przypadku gdy tablica będzie wyglądać tak jak poniżej to części wspólnej w ogóle nie ma bo żadna cyfra nie powtarza się w każdym z kluczy :

  1. (
  2. [0] => 4, 6, 5
  3. [1] => 4, 5, 6, 10, 13, 17, 18, 19, 20, 21, 26, 27, 29, 40, 42, 48, 58, 59, 70
  4. [2] => 4, 5, 6
  5. [3] => 25, 28, 33, 45
  6. )


Przeszukałem manuala i nie bardzo potrafię dopasować odpowiednią funkcję której mógłbym użyć.

Proszę o wskazówki.


Jak zwykle znalazłem rozwiązanie po tym jak napisałem posta.

Postaram się zmusić array_intersect to zadziałania.
wookieb
  1. $tab = array(
  2. range(1, 10),
  3. range(1, 20),
  4. range(1, 5),
  5. range(1,15)
  6. );
  7.  
  8. $tab = call_user_func_array('array_intersect', $tab);
  9.  
  10. print_r($tab);

Spójrz na przykład. Zobacz jak wyglądało $tab na początu i będziesz wiedział co zrobić ze swoją tablica.
ylk
A dla mnie wujek Google był bardziej łaskawy:
http://forum.php.pl/index.php?showtopic=142992
slawek3422
dziękuję za pomoc
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.