Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Łączenie tablic
piotr485
post 16.12.2009, 08:46:25
Post #1





Grupa: Zarejestrowani
Postów: 292
Pomógł: 0
Dołączył: 10.07.2009

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


Witam mam takie tablice.

$tablica[1]
$tablica[2]
$tablica[3]
$tablica[4]
$tablica[5]
$tablica[6]
$tablica[7]
$tablica[8]
$tablica[9]

używając funkcji array_merge_recursive($tablica[1], $tablica[2]) mogę połączyc te tablice - rezultat jest zadowalacjący problem z tym, że nie każda tablica zawsze istnieje bądź może byc pusta.

Czy istnieje jakaś wbudowana funkcja która dodatkowo sprawdza czy tablica istnieje czy trzeba ja samemu napisać ?

Ten post edytował piotr485 16.12.2009, 08:47:01
Go to the top of the page
+Quote Post
skowron-line
post 16.12.2009, 09:33:49
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Wbudowanej to nie ma.
count


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
piotrooo89
post 16.12.2009, 10:26:53
Post #3


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




hmm jak chcesz sprawdzać czy tablica istnieje to chyba is_array


--------------------
Go to the top of the page
+Quote Post
Pilsener
post 16.12.2009, 10:31:24
Post #4





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


A jak chcesz sprawdzić czy nie jest pusta to empty - jest też funkcja isset, która sprawdzi czy tablica istnieje.
Go to the top of the page
+Quote Post
piotr485
post 16.12.2009, 11:53:45
Post #5





Grupa: Zarejestrowani
Postów: 292
Pomógł: 0
Dołączył: 10.07.2009

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


Próbuję coś takiego napisać, ale niestety mi niewychodzi:


  1.  
  2. for($i=1; $i<=9; $i++) {
  3. if(isset($sciezka_duze[$i])) {
  4. //co tutaj wpisac, aby dodawac ten element do tablicy $laczenie_tablic_gal ?
  5. $laczenie_tablic_gal = array_merge_recursive($sciezka_duze[$i]);
  6. }
  7.  
  8.  
Go to the top of the page
+Quote Post
piotrooo89
post 16.12.2009, 11:58:14
Post #6


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




ja bym to zrealizował tak:

sprawdzam czy jest tablica jeśli jest to tworzę nową tablice z nie pustymi i później łączę tą nowo powstałą.


--------------------
Go to the top of the page
+Quote Post
Czahoo
post 16.12.2009, 12:11:00
Post #7





Grupa: Zarejestrowani
Postów: 12
Pomógł: 2
Dołączył: 16.12.2009

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


Zakładam, że $tablica ma następującą formę - $tablica=array(1=>array(...) , 2=>array(...) , ... , 9=>array(...));
Wtedy proponuje takie rozwiązanie:
  1. $nowa_tablica=array();
  2. foreach($tablica as $t)
  3. {
  4. if(!empty($t))
  5. $nowa_tablica=array_merge($nowa_tablica,$t);
  6. }


--------------------
Czahoo - Gra MMORPG online
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: 16.07.2025 - 19:23