![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 437 Pomógł: 42 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Mam taką tablicę:
Kod Array ( [0] => Array ( [id] => 155199 [tresc] => Wesołych Świąt ) [1] => Array ( [id] => 155199 [tresc] => Wesołych Świąt ) [2] => Array ( [id] => 4244 [tresc] => Nowy Rok ) [3] => Array ( [id] => 4244 [tresc] => Nowy Rok ) ) I jak usunąć duplikaty pod względem id czyli mam tablice z 50 elementami, a w niej mam 5 elementów o id 4244, to jak zrobić, aby został 1 ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 437 Pomógł: 42 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
myślicie, że nie próbowałem array_unique ? próbowałem:
I za każdym razem usuwało mi wszystko, więc zostawał mi tylko 1 element ;| |
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Cierpliwość: (IMG:style_emoticons/default/smile.gif) Jest jeszcze coś takiego jak komentarze, nikt przecież nie powiedział, że masz użyc array_unique hehe (IMG:style_emoticons/default/tongue.gif)
http://pl2.php.net/manual/pl/function.array-unique.php#60323 Ten post edytował wookieb 24.12.2009, 12:02:39 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 184 Pomógł: 6 Dołączył: 23.02.2008 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Kod <?php $arr = array(); $arr[0]['id'] = '155199'; $arr[0]['tresc'] = 'Wesołych Świąt'; $arr[1]['id'] = '155199'; $arr[1]['tresc'] = 'Wesołych Świąt'; $arr[2]['id'] = '4244'; $arr[2]['tresc'] = 'Nowy Rok'; $arr[3]['id'] = '4244'; $arr[3]['tresc'] = 'Nowy Rok'; foreach( $arr as $key => $val ) { $arr[$key] = serialize($val); } $arr = array_unique($arr); foreach( $arr as $key => $val ) { $arr[$key] = unserialize($val); } print_r($arr); ?> |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 18.11.2009 Skąd: Legnica Ostrzeżenie: (20%) ![]() ![]() |
Odświeżam wątek. Mam nieco inny problem
$wykonaj = mysql_query("SELECT * FROM osoby WHERE cos tam cos tam") or die ("Błąd w łączeniu"); while($wiersz = mysql_fetch_array($wykonaj)) { $num[]=$wiersz['num']; $imie[]=$wiersz['im1']; $nazw[]=$wiersz['nazw']; $pesel[]=$wiersz['pesel']; $ur[]=$wiersz['ur']; $syn[]=$wiersz['syn']; $miej[]=$wiersz['miej']; $ul[]=$wiersz['ul']; $dom[]=$wiersz['dom']; $co[]=$wiersz['co'];}; } Chciałbym wyrzucić z wszystkich tablic te wartosci, dla których w tablicy $num[] wystąpił dubel. Przykładowo : $num[0]='222'; $num[1]='992'; $num[2]='222'; $num[2] jest zdublowany wiec we wszystkich tablicach wyrzucić tą wartość w pozycji [2] Kto podpowie jak to zrobić. Nie mam bladego pojęcia. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Po prostu przy wrzucaniu sprawdzaj czy juz jest czy nie...
i juz |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 18.11.2009 Skąd: Legnica Ostrzeżenie: (20%) ![]() ![]() |
@ nospor
Dzięki wielkie, ale mam prośbę. Czy mógłbyś mi napisać co właściwie zrobiłeś ? Chciałbym wiedzieć co to oznacz niż tylko gotowy kod, wtedy lepiej zrozumiem problem. |
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jedyne co dopisałem to to:
if (in_array($wiersz['num'], $num)) continue; no bez żartów, że muszę ci to tłumaczyć... zajrzyj do manuala jak nie wiesz co robi in_array lub continue A co robi dokładnie ten kod to ci przecież napisałem: Cytat Po prostu przy wrzucaniu sprawdzaj czy juz jest czy nie... Czyli moj kod sprawdza czy jest już wartosc w tablicy czy nie...
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 18.11.2009 Skąd: Legnica Ostrzeżenie: (20%) ![]() ![]() |
Wywaliło mi
Warning: in_array() expects parameter 2 to be array, null given in |
|
|
![]()
Post
#13
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Bo najwyrażniej nigdzie nie powiedziałes, że $num jest tablicą...
Przed pętlą daj: $num = array(); |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 18.11.2009 Skąd: Legnica Ostrzeżenie: (20%) ![]() ![]() |
@ nospor
Jesteś Wielki, mała rzecz a cieszy jak Vasco Da Gama gdy zbliżał się do Indii. Nie będę klikał pomógł bo i tak masz rekord nie do pobicia jak Jane Ahonen w 2005 w Willingen. :-) @aras785 array_unique to zły pomysł. Jedną tablicę można "od-dublować" ale co z pozostałymi ? Ten post edytował 8_pasazer_NOSTROMO 9.01.2013, 10:37:57 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 17:02 |