Avatar billede engberg Juniormester
03. oktober 2005 - 18:48 Der er 5 kommentarer og
1 løsning

Find gengangere i et array..

Jeg vil gerne søge arrayet: $Alle_Typer for gengangere, altså værdier der opstår flere gange.

Hver gang der findes en genganger skal mit script gøre noget....
Avatar billede jaw Nybegynder
03. oktober 2005 - 18:49 #1
Du kan måske bruge: www.php.net/in_array
Avatar billede coderdk Praktikant
03. oktober 2005 - 19:52 #2
Du kan finde gengangerne ret nemt sådan:

    $arr = array( "hej", "hej", "test", "lidt", "array", "array", "hejsa" );
    $dupes = array_diff_assoc( $arr, array_unique( $arr ) );
    foreach ( $dupes as $idx => $dupe )
    {
        echo "Duplikat i index $idx, værdi: $dupe<br>";
    }
Avatar billede engberg Juniormester
04. oktober 2005 - 08:10 #3
Det er næsten godt...

Men jeg har også brug for, at vide hvor alle de værdier der er ens er...

Altså hvis der er dublikat i fx $arr[22], så skal jeg vide alle id'er på de steder hvor den værdi fremkommer...

OG hvis dublikaten så kommer 3. og 4. gang også skal løkken IKKE gentages... det blev vist lidt kringlet?? Men spørg endeligt - jeg smider lige lidt flere point i, hvis det her lykkes...
Avatar billede engberg Juniormester
04. oktober 2005 - 11:18 #4
nevermind - har fundet ud af det....
Der skulle stå følgende inde i den foreach coderdk lavede:

reset($Alle_Typer);
$f = 0;
while (list($key, $val) = each($Alle_Typer)) {
    if($val == $dupe){
        $TyperTilGraf[] = $f;
        $ProcTilGraf[] = $Alle_Proc[$key];
        $f++;
    }
}

coderdk smid et svar...
Avatar billede engberg Juniormester
21. november 2005 - 08:41 #5
coderdk smid svar
Avatar billede coderdk Praktikant
21. november 2005 - 10:54 #6
Sorry, værsågod :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester