Array überschreiben

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

  • Array überschreiben

    Hallo,

    eine Frage mal wieder von mir =)

    Ich habe ein Array mit Werten zB.

    Array[0] == 1
    Array[1] == 2 <- möcht ich löschen
    Array[2] == 3
    Array[3] == 4

    ich möchte jetzt zB. Array[1] löschen und das Array danach neu sortieren das es so aussieht:

    Array[0] == 1
    Array[1] == 3
    Array[2] == 4

    Mein Problem: ich bekomm das nicht hin ....

    also als erstes wollte ich den Inhalt mit unset löschen...
    PHP-Code:
    $del 1;
    unset(
    $Array['$del']); oder 
    unset($Array[$del]); oder 
    unset($Array["$del"]); 
    dann wollte ich den Inhalt überschreiben
    PHP-Code:
    Array[1] = ''
    Fazit: nichts funktioniert der Arrayinhalt bleibt und bleibt und bleibt der selbe...

    Grund warum ich den Inhalt löschen wollte ist das ich ne Funktion gefunden hatte die leere Felder löscht ( http://phptt.de/showschnipsel.php?kat=2&id=19 )

    dann hätt ich das Array nurnoch neu sortieren müssen ... aber so weit komm ich ja nichtmal =(
    Zuletzt geändert von owi; 15.10.2008, 22:46.

  • #2
    Zeig doch mal ein konkretes Codebeispiel, in dem deine Ansätze nicht funktionieren.
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Kommentar


    • #3
      PHP-Code:
      unset($Array[$del]);
      $array_tmp = array();
      foreach(
      $Array as $k => $v) {
         
      $array_tmp[] = $v;
      }
      $Array $array_tmp;
      unset(
      $array_tmp); 
      it's not a bug,
      it's a feature!

      Kommentar


      • #4
        Ich weiss nicht was ich ohne euch machen würde... Es funktioniert, danke! =)

        Ich verstehe den Code zwar leider (noch) nicht ganz aber das wird hoffentlich auch noch

        Kommentar


        • #5
          ist doch ganze einfach:
          PHP-Code:
          unset($Array[$del]); //gewünschtes Element löschen
          $array_tmp = array(); //Hilfsarray anlegen
          foreach($Array as $k => $v) { //jedes Element des alten Arrays in das Hilfsarray schreiben
             
          $array_tmp[] = $v;
          }
          $Array $array_tmp//altes Array = Hilfsarray
          unset($array_tmp); //Hilfsarray löschen 
          it's not a bug,
          it's a feature!

          Kommentar


          • #6
            Wenn du das Array neu indizieren möchtest, lässt sich dies nach div. Benchmarks[1][2] i. d. R. wie folgt am Effizientesten (und dazu äußerst kompakt) bewerkstelligen:
            PHP-Code:
            $Array array_values($Array); 
            Informationen zur verwendeten Funktion findest du beispielsweise in der offiziellen Dokumentation.

            Kommentar


            • #7
              Array[0] == 1 Array[1] == 2 <- möcht ich löschen Array[2] == 3 Array[3] == 4 ich möchte jetzt zB. Array[1] löschen und das Array danach neu sortieren das es so aussieht: Array[0] == 1 Array[1] == 3 Array[2] == 4
              Hast du schon einmal das Manual dazu angeschaut?
              PHP-Code:
              $test = array(1234);  
              array_splice($test11); 
              Simploo CMS - das einfache Webseiten-Bearbeitungsprogramm

              Kommentar


              • #8
                mitlerweile versteh ich es auch, danke für die erklärung =)

                Kommentar

                Lädt...
                X