Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]łączenie tablicy
szybki
post 5.10.2016, 10:05:30
Post #1





Grupa: Zarejestrowani
Postów: 85
Pomógł: 0
Dołączył: 18.06.2014

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


Mam tablicę

  1. $x = array(
  2. 'klucz1' => array('id','xx','zz'),
  3. 'klucz2' => array('id','xx2','zz'),
  4. );


Jak to połączyć aby otrzymać:

  1. $x = array(
  2. ('id','xx', 'xx2','zz'),
  3. );
Go to the top of the page
+Quote Post
nospor
post 5.10.2016, 10:07:44
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




http://php.net/manual/en/function.array-merge.php
a potem
http://php.net/manual/en/function.array-unique.php


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
szybki
post 5.10.2016, 10:14:46
Post #3





Grupa: Zarejestrowani
Postów: 85
Pomógł: 0
Dołączył: 18.06.2014

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


tylko nie wiem ile i jakie będą klucze

  1. $res = array_merge(array_keys($x), $x);


Jedyne co przychodzi mi do głowy to pętla, tylko czy nie ma od tego funkcji?
Go to the top of the page
+Quote Post
nospor
post 5.10.2016, 10:20:24
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nie wiesz jakie beda klucze... nie mozna bylo od razu napisac?

  1. $x = array(
  2. 'klucz1' => array('id','xx','zz'),
  3. 'klucz2' => array('id','xx2','zz'),
  4. );
  5.  
  6. $ar = array_reduce($x, function($carry, $item) {
  7. return array_unique(array_merge($carry, $item));
  8. }, []);
  9.  
  10. print_r($ar);


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kapslokk
post 5.10.2016, 10:22:30
Post #5





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

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


mozna tez chyba:
  1. array_unique(call_user_func_array('array_merge', $x));
Go to the top of the page
+Quote Post
nospor
post 5.10.2016, 10:26:14
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Mozna smile.gif

Tak samo moje mozna skrocic do
$ar = array_unique(array_reduce($x, 'array_merge', []));

nie mniej jednak chcialem unique robic na biezaco a nie na koniec... nie wiem czemu


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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: 13.06.2025 - 09:58