![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich,
Mam pewien problem. napisałem sobie funkcję:
Niestety tablica dla, której dwie wartości są takie same nie jest usuwana. Nie bardzo wiem co jest nie tak. Struktura $result: Kod Array( [key] => Array [0] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [1] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [2] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [3] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [4] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [5] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [6] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [7] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [8] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) ) ) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Raz że tablica jest pusta...
pokaż tablicę wejściową, tablicę wyjściową, i opisz warunek który musi zajść żeby $a => $a' |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Tablica nie jest pusta.
Tablica wejściowa i wyjściowa jest identyczna i zawiera 919 elementów. Tablica [key] ma zostać usunięta, jeśli np [key][1][1]==[key][2][1]. Generalnie jeśli wartość w [1] chociaż dla dwóch jest taka sama |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 807 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Niestety nic to nie zmienia.
Próbowałem wcześniej tego rozwiązania. Ten post edytował nansss93 16.05.2016, 13:52:39 |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
array_filter sluzy do filtrowania - patrz manual.
przy zalozeniu rzecz jasna, ze twoje FOR i warunki sa poprawne - tego nie sprawdzalem |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Fakt faktem po Twoim rozwiązaniu
przed wykonaniem array_filter oraz po jest różny, ale przykład, który wiem, że się powtarzają wartości, w dalszym ciągu istnieje: print_r przed i po zwraca: Kod Array ( [1] => Array ( [0] => [1] = [2] => [3] => [4] => [5] => ) [3] => Array ( [0] => [1] = [2] => [3] => [4] => [5] => ) [4] => Array ( [0] => [1] = [2] => [3] => [4] => [5] => ) [5] => Array ( [0] => [1] = [2] => [3] => [4] => [5] => ) [6] => Array ( [0] => [1] = [2] => [3] => [4] => [5] => ) [7] => Array ( [0] => [1] = [2] => [3] => [4] => [5] => ) [8] => Array ( [0] => [1] => data-LV3 [2] => [3] => [4] => [5] => ) [9] => Array ( [0] => [1] => data-LV3 [2] => [3] => [4] => [5] => ) ) a moje założenie jest takie, że przy wywołaniu print_r po array_filter powinienem dostać undefined lub chociaż pustą tablicę. Jednak wolałbym, żeby została ona usunięta. |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Mi tam dla danych testowych dziala. Miales jeden blad z j > 0
Jak mowilem sprawdz swoje warunki, ja mam inne rzeczy do zrobienia (IMG:style_emoticons/default/wink.gif) |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Faktycznie. Dla testowych danych działa.
|
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za pomoc (IMG:style_emoticons/default/smile.gif)
O to chodziło EDIT:: -------------------------------------------------------------------------------------------------- Temat niestety powrócił, ale z troszkę inną funkcją. Muszę wyrzucić z tablicy tablice, w której brakuje danych pomiędzy. Przykładowe dane: Kod Array ( [1] => Array ( [0] => [1] => data-LV0 [2] => [3] => [4] => [5] => ) [3] => Array ( [0] => [1] => data-LV1.5 [2] => [3] => [4] => [5] => ) [4] => Array ( [0] => [1] => data-LV2 [2] => [3] => [4] => [5] => ) [5] => Array ( [0] => [1] => data-LV4 [2] => [3] => [4] => [5] => ) [6] => Array ( [0] => [1] => data-LV5 [2] => [3] => [4] => [5] => ) [7] => Array ( [0] => [1] => data-LV6 [2] => [3] => [4] => [5] => ) [8] => Array ( [0] => [1] => data-LV7 [2] => [3] => [4] => [5] => ) [9] => Array ( [0] => [1] => data-LV8 [2] => [3] => [4] => [5] => ) ) Jak widać brakuje data-LV3, więc taka tablica powinna zostać usunięta. Starałem się napisać coś na podobieństwo kodu nospor, ale coś źle filtruje mi te dane: KOD:
Potrzebuje jakiejś podpowiedzi Ten post edytował nansss93 24.05.2016, 12:03:02 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ale skąd ma być usunięta... Przecież w tablicy źródłowej nie ma tej wartości więc nie masz skąd jej usunąć.
|
|
|
![]()
Post
#13
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
@Pyton i po raz kolejny: czytaj tresc zadan od poczatku (IMG:style_emoticons/default/tongue.gif)
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ten post edytował Pyton_000 24.05.2016, 12:48:41 |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Niestety powyższa metoda nie filtruje danych. Po wykonaniu metody ilość danych jest taka sama.
Dokładniejsza struktura: Kod Array ( [key1] => Array ( [1] => Array ( [0] => [1] => data-LV0 [2] => [3] => [4] => [5] => ) [3] => Array ( [0] => [1] => data-LV1.5 [2] => [3] => [4] => [5] => ) [4] => Array ( [0] => [1] => data-LV2 [2] => [3] => [4] => [5] => ) [5] => Array ( [0] => [1] => data-LV4 [2] => [3] => [4] => [5] => ) [6] => Array ( [0] => [1] => data-LV5 [2] => [3] => [4] => [5] => ) [7] => Array ( [0] => [1] => data-LV6 [2] => [3] => [4] => [5] => ) [8] => Array ( [0] => [1] => data-LV7 [2] => [3] => [4] => [5] => ) [9] => Array ( [0] => [1] => data-LV8 [2] => [3] => [4] => [5] => ) ) [key2] => Array ( [1] => Array ( [0] => [1] => data-LV0 [2] => [3] => [4] => [5] => ) [3] => Array ( [0] => [1] => data-LV1.5 [2] => [3] => [4] => [5] => ) [4] => Array ( [0] => [1] => data-LV2 [2] => [3] => [4] => [5] => ) [5] => Array ( [0] => [1] => data-LV4 [2] => [3] => [4] => [5] => ) [6] => Array ( [0] => [1] => data-LV5 [2] => [3] => [4] => [5] => ) [7] => Array ( [0] => [1] => data-LV6 [2] => [3] => [4] => [5] => ) [8] => Array ( [0] => [1] => data-LV7 [2] => [3] => [4] => [5] => ) [9] => Array ( [0] => [1] => data-LV8 [2] => [3] => [4] => [5] => ) ) ) Ten post edytował nansss93 24.05.2016, 13:09:27 |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
zmień w "$cols = array_column($array, 2);" na 1
|
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
Bez zmian. Zwrotka jaką dostaję:
Kod [b] => Array ( [3] => Array ( [0] => a [1] => b-Lv0.9 [2] => b [3] => c [4] => d [5] => e ) [4] => Array ( [0] => a [1] => b-Lv3.5 [2] => b [3] => c [4] => d [5] => e ) ) A nie spełnia to założenia. Brakuje LV1 oraz LV2 pomiędzy Ten post edytował nansss93 24.05.2016, 13:44:47 |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
wcześniej dawałeś "data-LV"... teraz masz "b-Lv"
|
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 1 Dołączył: 27.10.2015 Ostrzeżenie: (0%) ![]() ![]() |
To były przykładowe dane
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Pyton_000 zrób mu to uniwersalne bo to chyba lecą przykładowe dane (IMG:style_emoticons/default/biggrin.gif)
|
|
|
![]()
Post
#21
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
@com i co jeszcze ? Nie dość że gotowiec to jeszcze mam się zastanawiać? A może tam po prostu jest kupa, albo każdy klucz inny....
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 21:05 |