Aus Array alle leeren Einträge löschen

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

  • Aus Array alle leeren Einträge löschen

    Hallo Board,

    wie bekommt man leere Einträge aus einem Array ?

    Beispiel:

    array_unique() funktioniert nicht.

    Oder geht das nur indem man die nicht leeren Werte (!empty) in ein neues Array kopiert ?
    Pickel ? Übergewicht ? Depressionen ?
    Brot, Kartoffeln und Milch sind Gift!
    http://www.paleofood.de

  • #2
    schau dir mal die funktion an:

    http://de3.php.net/array_walk

    Kommentar


    • #3
      Hmm,

      die Funktion wendet auf jedes Element eine Funktion an.
      Aber wie soll das weiterhelfen? Ein Tipp?
      Die Indexe die keine Werte haben sollen ja komplett raus.
      Denke man muss die nicht leeren Werte in ein neues Array kopieren, oder? Mit array_splice() kann man auch nur bestimmte Teile rausschmeißen.

      hmmm
      Pickel ? Übergewicht ? Depressionen ?
      Brot, Kartoffeln und Milch sind Gift!
      http://www.paleofood.de

      Kommentar


      • #4
        ich würde ja eher array_filter() bevorzugen ...
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Also ich habe mir gerade mal dieses Beispiel vorgenommen.

          If the callback function is not supplied, array_filter() will remove all the entries of input that are equal to FALSE. See converting to boolean for more information.
          PHP-Code:
          <?php

          $entry 
          = array(
                       
          => 'foo',
                       
          => false,
                       
          => -1,
                       
          => null,
                       
          => ''
                   
          );

          print_r(array_filter($entry));
          ?>


          PHP-Code:
          function updateCard($anzahl$artikelnummer)
          {   
              
          $anzahl array_filter($anzahl);
              
          $artikelnummer array_filter($artikelnummer); 
          Wenn ich mir die beiden Arrays(die aus einem POST Formular stammen) werden alle leeren Felder aber auch mit ausgegeben. Werden also nicht herausgefiltert.
          Das leere Arrayfeld ist also nicht das selbe wie '', folglich geht array_filter() nicht, oder?
          Pickel ? Übergewicht ? Depressionen ?
          Brot, Kartoffeln und Milch sind Gift!
          http://www.paleofood.de

          Kommentar


          • #6
            Original geschrieben von antman
            Das leere Arrayfeld ist also nicht das selbe wie '', folglich geht array_filter() nicht, oder?
            was glaubst du denn, wofür man bei der funktion auch eine "callback function" angeben kann?
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Aber wo läge der Vorteil eine Callbackfunktion zu verwenden?

              PHP-Code:
              for($i=0$i <= count($anzahl); $i++) {
                  if(!empty(
              $anzahl[$i])) {
                      
              $tempAn[] = $anzahl[$i];
                      
              $tempAr[] = $artikelnummer[$i];
                  }
                  
              $anzahl $tempAn;
                  
              $artikelnummer $tempAr;

              So klappt es und kürzer wird es wohl nicht gehen.
              Pickel ? Übergewicht ? Depressionen ?
              Brot, Kartoffeln und Milch sind Gift!
              http://www.paleofood.de

              Kommentar

              Lädt...
              X