Ankündigung

Einklappen
Keine Ankündigung bisher.

Werte in mehrdim. Arrays zählen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Werte in mehrdim. Arrays zählen

    Ich verlier hier auch bald die Nerven ! Andauernd gibts neue Probleme...
    Wie zur Hölle krieg ich diese while Schleife beendet:

    PHP-Code:
    $i=0;
    while (
    $stopp!=1) {
            if (
    $ergebnis[2][$i] != "Testbegriff") {
                
    $stopp=0;
                
    $i+=1;
            }
            else 
    $stopp=1;

    $ergebnis ist also ein Mehrdimensionales Array. Die zweite Spalte, also bei mir die, die durch's $i beeinflusst wird, ist im Grunde die Anzahl der verschiedenen Zeilen ! $ergebnis[0][0], $ergebnis[1][0], $ergebnis[2][0] gehört thematisch zusammen und $ergebnis[0][1], $ergebnis[1][1], $ergebnis[2][1] ebenfalls etc. Wenn ich nun count($ergebnis) sage, zeigt er mir 3 an, somit kann ich die while-Schleife nicht nach count($ergebnis) abbrechen lassen, weil er bei der Zeile (--> $i) noch nicht durch ist. Wie zählt man denn die Einträge der Spalte in meinem Fall ??? Irgendwie muss ich die while-Schleife doch abbrechen können, wenn Testbergiff nicht in $ergebnis steht.[/code]

  • #2
    Mir unverständliche Beschreibung der Feldstruktur, aber dem Code nach:
    PHP-Code:
    <?php
    $ergebnis 
    = array(
        
    1=>array(1=>'a'2=>'Testbegriff'3=>'c'),
        
    2=>array(1=>'a'2=>'b'3=>'Testbegriff'),
        
    3=>array(1=>'a'2=>'b'3=>'c')
    );

    $pos array_search('Testbegriff'$ergebnis[1]);
    echo 
    'Testbegriff in ergebnis[1]:', ($pos!==false) ? 'Index='.$pos:'nicht vorhanden'"
    \n"
    ;

    $pos array_search('Testbegriff'$ergebnis[2]);
    echo 
    'Testbegriff in ergebnis[2]:', ($pos!==false) ? 'Index='.$pos:'nicht vorhanden'"
    \n"
    ;

    $pos array_search('Testbegriff'$ergebnis[3]);
    echo 
    'Testbegriff in ergebnis[3]:', ($pos!==false) ? 'Index='.$pos:'nicht vorhanden'"
    \n"
    ;
    ?>

    Kommentar


    • #3
      Also, nochmal ein Beschreibungsversuch des Fehlers: ich habe die obige while-Schleife, die super funktioniert, wenn "Testbegriff" im Array steht. Steht es aber nicht drin, gibt es eine Endlos-Schleife. Ich wolte eigentlich die while Schleife nach einem Durchgang des Arrays beenden, aber alles was ich versuchte zur Angabe des Array-Endes hat nicht gefunzt.

      Kommentar


      • #4
        Warum willst du dafür denn unbedingt eine Schleife nehmen, wenn in_array() oder array_search() dein Problem genauso gut lösen?

        Kommentar


        • #5
          Nee, kann ich eben nicht. Ich brauche eine Schleife an der Stelle. Aber trotzdem danke ! Hab mein Problem eben gelöst, einfach per count($ergebnis[0]) kommt man an die Anzahl, die ich gesucht habe. Ich hatte immer nur count($ergebnis) probiert.

          Kommentar

          Lädt...
          X