Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Część wspólna w tablicy
slawek3422
post 31.01.2011, 14:21:35
Post #1





Grupa: Zarejestrowani
Postów: 142
Pomógł: 7
Dołączył: 3.08.2007
Skąd: śląsk

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


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.

Ten post edytował slawek3422 31.01.2011, 14:26:22
Go to the top of the page
+Quote Post
wookieb
post 31.01.2011, 14:26:50
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




  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.


--------------------
Go to the top of the page
+Quote Post
ylk
post 31.01.2011, 14:27:43
Post #3





Grupa: Zarejestrowani
Postów: 194
Pomógł: 26
Dołączył: 9.01.2011
Skąd: /dev/null

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


A dla mnie wujek Google był bardziej łaskawy:
http://forum.php.pl/index.php?showtopic=142992
Go to the top of the page
+Quote Post
slawek3422
post 31.01.2011, 15:10:04
Post #4





Grupa: Zarejestrowani
Postów: 142
Pomógł: 7
Dołączył: 3.08.2007
Skąd: śląsk

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


dziękuję za pomoc
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: 26.04.2024 - 21:03