phpbar.de logo

Mailinglisten-Archive

AW: [php] array filtern

AW: [php] array filtern

Gloss Mathias php_(at)_phpcenter.de
Mon, 8 Oct 2001 17:51:02 +0200


Aloha,

> ----------
> Von: 	iwos Internet-Service[SMTP:webmaster_(at)_iwos.de]
>=20
> wie kann ich aus folgendem ARRAY
> doppelte eintr=E4ge entfernen ?
>=20
> $SELECT[0]=3Darray( "a","b","c");
> $SELECT[1]=3Darray( "d","e","f");
> $SELECT[2]=3Darray( "a","b","c");
> $SELECT[3]=3Darray( "d","e","f");
>=20
du hast hier ein Array, das 4 Arrays enthaelt.... man k=F6nnte auch =
schreiben
$SELECT =3D ( array("a","b","c"), array().... array() );

> hab s probiert mit array_unique ($SELECT);
>=20
das schl=E4gt fehl, da das nur pr=FCft, ob die 3 Arrays in $SELECT
unterschiedlich
sind (sind sie ;)

> und verschiedenen filtern in einer for schleife.
>=20
Hm, aber nicht richtig. (ungetestet:)

$eindeutig =3D array(); # hier sind die eindeutigen Werte drin
# schleife =FCber 1. Array
for ( $x=3D0; $x < sizeof ( $SELECT ); $x++) { =20
  # schleife =FCber Array mit Werten
  for ($y=3D0; $y < sizeof ( $SELECT[$x] ); $y++) {
    if ( $seen[$SELECT[$x][$y]] =3D=3D false ) {
      $seen[$SELECT[$x][$y]] =3D true; # Hash mit den Buchstaben
      $eindeutig[$x][$y]  =3D $SELECT[$x][$y];
    }
  }
}

Dann sind die Buchstaben in jedem Array eindeutig. Hoffe das Prinzip
kam an ... bin jetzt im wohlverdienten Feierabend :)

Gr=FC=DFe, Mathias



php::bar PHP Wiki   -   Listenarchive