Het is waarschijnlijk super eenvoudig, maar ik kom er niet uit.
Ik heb een array met daarin verschillende personen. In deze array mogen geen duplicaten voorkomen.
Dit wil ik filteren met behulp van array_unique().
Echter, wanneer ik deze functie gebruik, wordt alleen de eerste persoon in de array getoond.
Alle overige worden gezien als duplicaten en verwijderd. Op zich logisch, want elke item in een array heeft "naam", "adres", "postcode", "woonplaats", "nummer".
Hoe kan ik er voor zorgen dat bij het onderstaande voorbeeld alleen de eerste 2 resultaten worden getoond en de 3e als duplicaat wordt gezien?
Ik heb een array met daarin verschillende personen. In deze array mogen geen duplicaten voorkomen.
Dit wil ik filteren met behulp van array_unique().
Echter, wanneer ik deze functie gebruik, wordt alleen de eerste persoon in de array getoond.
Alle overige worden gezien als duplicaten en verwijderd. Op zich logisch, want elke item in een array heeft "naam", "adres", "postcode", "woonplaats", "nummer".
Hoe kan ik er voor zorgen dat bij het onderstaande voorbeeld alleen de eerste 2 resultaten worden getoond en de 3e als duplicaat wordt gezien?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| Array ( [0] => Array ( [naam] => Naam 1 [adres] => Adres 1 [postcode] => Postcode 1 [woonplaats] => Woonplaats 1 [nummer] => 1 ) [1] => Array ( [naam] => Naam 2 [adres] => Adres 2 [postcode] => Postcode 2 [woonplaats] => Woonplaats 2 [nummer] => 2 ) [2] => Array ( [naam] => Naam 2 [adres] => Adres 2 [postcode] => Postcode 2 [woonplaats] => Woonplaats 2 [nummer] => 2 ) ) |
PHP:
1
2
3
| $test[] = array(naam=>$row['naam'],adres=>$row['adres'],postcode=>$row['postcode'],woonplaats=>$row['woonplaats'],nummer=>$row['nummer']); echo '<pre>',print_r(array_unique($test)),'</pre>'; // Toont alleen het eerste item in de array. |