Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Porównanie zawartości n-tablic
karolmm
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 16.10.2012

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


Witam,

w pętli wykonuję selecta. Wynik obrabiam i docelowo zapisuję. W rezultacie mam n-tablic lub jedną tablicę z n-tablicami w środku. Każda z nich ma jednakową budowę, tj. [0]=>string(2) "12", [1]=>string(2) "17" .... [n]=>string[1] "6" .... I teraz potrzebuję porównać wszystkie tablice i znaleźć element, który występuje w każdej z nich.

Proszę o pomoc, w jaki sposób można to zrobić. Próbowałem z array_intersect ale nie działa do końca dobrze [porównuje każdą tablicę do poprzednika].

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Pyton_000
post
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


@kalipek: Wartość ma być we wszystkich a nie zliczone (IMG:style_emoticons/default/smile.gif)

@
To Ci ułatwi sprawę:
  1. <?php
  2.  
  3. function array_flatten($array)
  4. {
  5. $return = array();
  6. array_walk_recursive($array, function($x) use (&$return) { $return[] = $x; });
  7. return $return;
  8. }
  9.  
  10. $array = [
  11. 0 => [
  12. 0 => [
  13. 0 => [
  14. 'product__id' => 10,
  15. ],
  16. 1 => [
  17. 'product__id' => 1,
  18. ],
  19. ],
  20. 1 => [
  21. 0 => [
  22. 'product__id' => 10,
  23. ],
  24. 1 => [
  25. 'product__id' => 10,
  26. ],
  27. ],
  28. ]
  29.  
  30. ];
  31.  
  32.  
  33. $newArray = [];
  34. foreach($array[0] as $key => $arr)
  35. {
  36. $newArray[$key] = array_flatten($arr);
  37. }
  38.  
  39. echo '<pre>'; var_dump($newArray); die("\n".(__FILE__)." ".(__LINE__));


Ten post edytował Pyton_000 15.09.2014, 15:39:41
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 18:32