Ankündigung

Einklappen
Keine Ankündigung bisher.

Zahlen bis zu einem Maximal-Wert aus array suchen

Einklappen

Neue Werbung 2019

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

  • Zahlen bis zu einem Maximal-Wert aus array suchen

    Hallo,
    ich möchte Zahlen suchen, die kleiner als ein bestimmter Wert sind. Ich habe folgende Ansätze, aber irgendwie geht es nicht.

    PHP-Code:
    $bereich=array(1,2,3,4,5,6,7,8,9,10,11,12);
    $max=9;
    foreach(
    $bereich AS $ergebnis);
    if(
    $ergebnis<$max)
    print_r($ergebnis) ; 
    oder
    PHP-Code:
    $bereich=array(1,2,3,4,5,6,7,8,9,10,11,12);
    $max=9;
    for(
    $i=0$i count($bereich); $i++);
    if(
    $bereich[$i]<$max)
    print_r($bereich[$i]); 
    was mache ich da falsch?

    vielen Dank

  • #2
    print_r erwartet ein Array. Mit print_r($bereich[$i]); wählst du aber schon ein Arrayelement aus.

    Probiers mit echo und einem break.

    Oder machs so
    PHP-Code:
    $bereich=array(1,2,3,4,5,6,7,8,9,10,11,12);
    $max=9;
    function 
    getSmallest($bereich,$max)
           for(
    $i=0$i count($bereich); $i++){
                  if(
    $bereich[$i]<$max){
                    return 
    $bereich[$i]; 
                   }
          }
    }
    echo 
    getSmallest($bereich,$max); 
    EDIT:

    Sorry.Mit der Lösung bekommst nur eine Zahl zurück. Du möchtest aber alle kleineren Zahlen.
    Also so
    PHP-Code:
    $bereich=array(1,2,3,4,5,6,7,8,9,10,11,12);
    $max=9;
    function 
    getSmallest($bereich,$max)
           for(
    $i=0$i count($bereich); $i++){
                  if(
    $bereich[$i]<$max){
                    
    $back[].= $bereich[$i]; 
                   }
          }
            return 
    $back;
    }
    print_r(getSmallest($bereich,$max)); 

    Kommentar


    • #3
      PHP-Code:
      foreach($bereich as $item)
      {
          if(
      $item $max)
          {
              echo 
      $item
          
      }

      - Laravel

      Kommentar


      • #4
        Wie wärs mit [MAN]array_filter[/MAN]?
        Also z.B.:
        PHP-Code:
        // Gibt alle Zahlen > 8 zurück
        $ergebnis array_filter($bereich, function($zahl) { return $zahl 8; }); 

        Kommentar


        • #5
          Stimmt

          Kommentar


          • #6
            Danke für die schnelle Hilfe! So geht es

            Kommentar


            • #7
              Schau dir mal die Beispiele für forech an und vergleiche sie mit deinen obigen Code.
              Dann wirst du schnell den kleinen Fehler finden.

              Kommentar


              • #8
                Zitat von Labrar Beitrag anzeigen
                PHP-Code:
                $bereich=array(1,2,3,4,5,6,7,8,9,10,11,12);
                $max=9;
                function 
                getSmallest($bereich,$max)
                       for(
                $i=0$i count($bereich); $i++){
                              if(
                $bereich[$i]<$max){
                                
                $back[].= $bereich[$i]; 
                               }
                      }
                        return 
                $back;
                }
                print_r(getSmallest($bereich,$max)); 
                Zitat von Labrar Beitrag anzeigen
                $back[].= $bereich[$i];

                Kommentar


                • #9
                  Wär lässt sich auch schon Notices anzeigen. Total uncool.

                  Kommentar


                  • #10
                    Witzigerweise bringt das auch nur ne notice wenn das Array nicht initialisiert wurde

                    PHP-Code:
                    $back = Array();
                    ...
                    $back[].= $bereich[$i]; 
                    Funktioniert dagegen ohne notice


                    http://www.php.de/php-einsteiger/108...ray#post800047
                    liebe Grüße
                    Fräulein Dingsda

                    Kommentar


                    • #11
                      wie rkr schon schrieb ist das echt sonderbar.

                      Kommentar

                      Lädt...
                      X