Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] arrays unsetten und sorten

Einklappen

Neue Werbung 2019

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

  • netti
    hat ein Thema erstellt [Erledigt] arrays unsetten und sorten.

    [Erledigt] arrays unsetten und sorten

    Hey zusammen,

    habe seit Ewigkeiten mal wieder mit php angefangen und habe nun ein Problem mit Arrays. Hab schon gesucht aber nicht das Richtige gefunden, wäre toll, wenn mir da wer nen Rat geben könnte.

    Ich habe hier ein Array mit 4 Einträgen.

    Code:
    $_incl['Bericht_Kats'][] ( [0] => g
                                [1] => z
                                [2] => b
                                [3] => a
    Ich unsette nun [1] und [2] und hab anschließend folgendes:

    Code:
     $_incl['Bericht_Kats'][] ( [0] => g
                                [3] => a
    Dies gebe ich mit einer for() Schleife aus, welches immer $i um eins erhöht und das Array mittels $_incl['Bericht_Kats'][$i] ausgibt.

    Problematisch hierbei ist natürlich, dass leere Felder ausgegeben werden, da die Schlüsselnummerierung im Array nicht mehr durchgängig ist. Ich möchte also die Einträge "zusammenrücken". Das ginge z.b. mit sort(), aber sort ordnet auch alphabetisch und genau DAS will ich NICHT. Leider hab ich vergessen, wie das stattdessen ging.

    Danke für eure Hilfe,
    lg netti


    p.s.: for()-Schleife deshalb, weil es ein altes und sehr umfangreiches cms-System ist, dass über viele Seiten verfügt. Es wäre faktisch unmöglich da alles zu ändern.

  • netti
    antwortet


    ja, wer lesen kann ist klar im vorteil ^^

    beg your pardon

    klar, erledigt. danke.

    Einen Kommentar schreiben:


  • cycap
    antwortet
    netti, ich hab nichts davon gesagt das du schleifen ersetzten sollst. mein oben genanntes beispiel macht genau das was du willst, array mit lücken rein -> array ohne lücken raus... du hast jetzt 3 funktionierende Methoden, ich denke der Thead kann als Erledigt markiert werden

    Einen Kommentar schreiben:


  • netti
    antwortet
    Super!

    Genau das habe ich gesucht - vielen Dank! =)

    Nimms mir nicht übel cycap, aber das wären so etwa 20 seiten in denen ich die for() Schleifen zu foreach ändern müsste... da fehlt mir die Motivation für =)

    Einen Kommentar schreiben:


  • David
    antwortet
    Oder array_values()

    Einen Kommentar schreiben:


  • cycap
    antwortet
    Ich hab mal für dich ins Manual geguckt und siehe da, dafür kann man auch wunderbar array_merge benutzen:

    Zitat von http://de2.php.net/manual/de/function.array-merge.php
    Falls nur ein Array angegeben und dieses numerisch indiziert ist, wird das Array fortlaufend neu nummeriert.

    Einen Kommentar schreiben:


  • cycap
    antwortet
    Ähm

    PHP-Code:
    $arr $orig_arr;
    unset(
    $orig_arr);
    foreach(
    $arr as $val)
    {
      
    $orig_arr[] = $val;
    }
    unset(
    $arr); 

    Einen Kommentar schreiben:


  • netti
    antwortet
    Zitat von netti Beitrag anzeigen
    for()-Schleife deshalb, weil es ein altes und sehr umfangreiches cms-System ist, dass über viele Seiten verfügt. Es wäre faktisch unmöglich da alles zu ändern.
    Hatte ich erwähnt =)

    Einen Kommentar schreiben:


  • cycap
    antwortet
    benutze eine foreach-schleife, dann hast du das problem nicht

    Einen Kommentar schreiben:

Lädt...
X