werte löschen?

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

  • werte löschen?

    kann mir einer sagen wie man einzelne werte aus arrays löschen kann??
    nein?

  • #2
    man kann mit array_shift() das erste element entfernen...

    du kannst doch aber auch einfach auf den wert "" setzten

    EDIT:



    man kann auch einzelne elemente entfernen:

    unset($array[element]); // zb $array[4]

    allerdings kann es sein das die anderen elemente nicht aufrücken sondern element 4 einfach weg gelassen wird

    $array[3];
    $array[5];


    Kommentar


    • #3
      Tatsächlich löschen (nicht nur den Inhalt leeren) kannst du Array-Werte mit array_splice.
      Die Werte rücken damit auch auf.
      Hier ein kleines Beispiel:
      PHP-Code:
      <?
      $loeschen_nr = 1; // 1 bedeutet, daß der 2. Wert gelöscht wird, da es bei Null losgeht

      $array = array ("rot", "grün", "blau", "gelb");

      echo "<b>vorher</b><br>";
      for($i=0;$i<count($array);++$i) echo "$array[$i] <br>";

      echo "<br>Wert $loeschen_nr ($array[$loeschen_nr]) wird gelöscht<br><br>";

      array_splice ($array, $loeschen_nr,1);
      echo "<b>nachher</b><br>";
      for($i=0;$i<count($array);++$i) echo "$array[$i] <br>";
      ?>
      Ausgabe dieses Beispiels:
      [FONT=courier]
      vorher
      rot
      grün
      blau
      gelb

      Wert 1 (grün) wird gelöscht

      nachher
      rot
      blau
      gelb
      [/FONT]
      Immer erst mal gucken, ob Benzin im Tank ist ...

      Kommentar


      • #4
        danke, aber ich brauch ne etwas andere version. Bei mir muss man sagen können lösch gelb oder lösch blau, hoffe du verstehst was ich meine, nicht nach position löschen sondern direkt nach wert
        nein?

        Kommentar


        • #5
          Dann vielleicht so, allerdings habe ich bei diesem Beispiel nicht berücksichtigt, daß evtl. der gleiche Wert mehrfach im Array vorkommen kann. Aber vielleicht hilft es dir wenigstens als Basis.
          PHP-Code:
          <?
          $loeschen_wert = "grün"; // Zum Testen

          $array = array ("rot", "grün", "blau", "gelb");

          echo "<b>vorher</b><br>";
          for($i=0;$i<count($array);++$i) echo "$array[$i] <br>";

          for($i=0;$i<count($array);++$i) if ($array[$i] == $loeschen_wert) $loeschen_nr = $i;

          if ($loeschen_nr) {
            array_splice ($array, $loeschen_nr,1);
            echo "<br>Wert $loeschen_wert wird gelöscht<br>";
            }

          echo "<br><b>nachher</b><br>";
          for($i=0;$i<count($array);++$i) echo "$array[$i] <br>";
          ?>
          Immer erst mal gucken, ob Benzin im Tank ist ...

          Kommentar


          • #6
            thx
            nein?

            Kommentar

            Lädt...
            X