Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jak najprosciej pozbyc sie z tablicy powtarzajace
Forum PHP.pl > Forum > Przedszkole
yalus
witam

czy orientuje sie ktos czy w php jest jakas wbudowana funkcja przy pomocy ktorej pozbede sie z tablicy jednowymiarowej powtarzajace sie elementy?

np. mam oto taka tablice [1,2,3,4,4,4,4,4,6,7,8,8,8,2,3,1,4,7,890,2,2,4,5,1,2,3,4,5,6,7,8,9,00,9,8,7.....
.........]

i teraz chcialbym pozbyc sie z niej powtarzajace sie numery

czyli po zastosowaniu tej funkcji powinno zostac cos takiego:
[1,2,3,4,5,6,7,8,9 itd]


czy istnieje jakas funkcja ktora to zrealizuje, czy ja samu musze ja wymyslic?

pozdrawiam
sf
array_unique -- Removes duplicate values from an array
yalus
  1. <?php
  2.  
  3. $wejscie = array (1,1,1,1,2,3,3,3,5,5,5);
  4. $wynik = array_unique ($wejscie);
  5. print_r($wynik);
  6. ?>


ok wynik funkcji print_r jest taki:

Array ( [0] => 1 [4] => 2 [5] => 3 [8] => 5 )

wszystko jest tak jak trzeba - powtarzajace sie elementy zniknely

ale chcac zrobic cos takiego:
  1. <?php
  2.  
  3. for ($i=0; $i<count($wynik); $i++) {
  4.  
  5. echo $wynik[$i];
  6. echo "<br>";
  7.  
  8. };
  9. ?>


pojawi sie error, gdyz indexy zostaly zachowane z poprzedniej tablicy

pytanie jest takie:

jak usunac powtarzajace sie elementy i jednoczesnie przenumerowac indexy w tablicy


ps.
chyba napisze wlasna funkcje smile.gif
ale jak ktos ma jakis pomysl to bardzo prosze o sugestie
dr_bonzo
mozesz dac foreach (.. )zamiast for() lub array_values( array_unique())
TomASS
Tyż miałem ostatnio z tym problem. Napisałem funkcyje:

  1. <?php
  2. function array_unique2($aTablica){
  3. $aTablica = array_unique($aTablica);
  4. $i=0;
  5. foreach ($aTablica as $value) {
  6. $nowa[$i++] = $value;
  7. }
  8. return $nowa;
  9. }
  10. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.