![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 54 Pomógł: 4 Dołączył: 22.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
W jaki sposób mogę połączyć tablice bez podawania ich ilości ? Chodzi mi o to, że wewnątrz tablicy mam tablice o różnej ilości, chciałbym je połączyć wszystkie jednakowo. Zrobiłem pętle, ale wtedy łączy mi 1 i ostatnią. Kod $var = json_decode($_POST['info']); $cVar = count($var); if ($cVar>1) { for ($i=0;$i<$cVar;$i++) { $r = array_merge($var[0], $var[$i]); } } Chodzi mi o to, by łączyło w 1 tablicę, nawet gdy są 3, 4, 5, 1000.. itd.. Pozdrawiam. -------------------- ...
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Chwila zastanowienia i sam byś dotarł do tego, że w $r zawsze łączysz pierwszą tablicę i kolejną według licznika i przy każdej iteracji pętli ponawiasz to, nadpisując już uzyskany wynik.
Sensowniejszy wynik uzyskasz takim kodem (pisane z palca):
Pamiętaj, że array_merge" title="Zobacz w manualu PHP" target="_manual może nadpisać Ci niektóre wartości, jeśli będą miały takie same klucze tekstowe -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 54 Pomógł: 4 Dołączył: 22.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Masz rację, doszedłem do tego, zanim napisałeś posta, ale dziękuję.
Moje drugie pytanie: jak sprawdzić, czy wszystkie elementy w tablicy są null ? Przykładowo taka tablica: Kod array(2) { [0]=> object(stdClass)#2 (1) { ["askldassdasdas"]=> NULL } [1]=> object(stdClass)#3 (1) { ["daskjdhasjkhdjkasda"]=> NULL } } Mój kod: Kod public function showWords() { $var = json_decode($_POST['info']); $cVar = count($var); $r = array(); //Merging the array for ($i=0;$i<$cVar;$i++) { $r = array_merge($r, $var[$i]); } $crVar = count($r); for ($i=0;$i<$crVar;$i++) { foreach ($r[$i] as $aKey => $aVar) { if ($aVar != NULL) { printf("%s == %s<br/>",$aKey, $aVar); } } } } Chciałbym w przypadku, gdy wszystkie elementy są null, wyświetlić : Brak wyników. A w przypadku, gdy pare elementów jest null, wyświetlić: "Nie przetlumaczone : ..." Ten post edytował z3L 17.01.2009, 12:51:22 -------------------- ...
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Moim zdaniem od is_null powinieneś uzależnić merge konkretnej tablicy, po czym na końcu sprawdzić rozmiar tablicy wynikowej. Jeśli wszystkie tablice łączone były null, to w wyniku dostaniesz tablicę pustą.
-------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 08:31 |