skibby: array_multisort() - Schlüssel beibehalten

Hallo,
die PHP-Funktion array_multisort() ist genau das was ich brauche. Das einzige Manko ist, dass nach dem sortieren alle meine Keys weg sind und durch neue von PHP ersetzt wurden.
Ich brauche diese Keys aber unbedingt. Die Funktion usort() hilft mir auch nicht sonderlich weiter, da ich auch nach 2 Kriterien sortieren können möchte.

Also ist es möglich die Funktion array_multisort() so umzubauen/anzupassen das meine ehemaligen Schlüssel erhalten bleiben?

Vielen Dank schonmal!

  1. Hi,

    die PHP-Funktion array_multisort() ist genau das was ich brauche. Das einzige Manko ist, dass nach dem sortieren alle meine Keys weg sind und durch neue von PHP ersetzt wurden.

    Manual:

    Associative (string) keys will be maintained, but numeric keys will be re-indexed.

    Vielleicht kannst du den Array ja (beim Erstellen) auf assoziative Keys umstellen?

    Die Funktion usort() hilft mir auch nicht sonderlich weiter,

    Stimmt, denn die behält die Keys auch nicht bei. uasort tut das aber.

    da ich auch nach 2 Kriterien sortieren können möchte.

    Ja und? Dann schreibst du deine Vergleichsfunktion eben so, dass sie das berücksichtigt.

    MfG ChrisB

    --
    “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
    1. Hi Chris,
      ich meinte uasort() tut mir leid. Kannst du mir das mit der Vergleichsfunktion vllt. ein bisschen genauer erklären?

      Danke

      1. Hi,

        Kannst du mir das mit der Vergleichsfunktion vllt. ein bisschen genauer erklären?

        Was diese zurück zu geben hat, wenn das erste Vergleichselement vor dem zweiten einsortiert werden soll, bzw. umgekehrt, beschreibt das Manual doch.

        Du brauchst sie also nur noch so schreiben, dass dabei beide Vergleichskriterien, die du definiert hast, berücksichtigt werden.

        MfG ChrisB

        --
        “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
        1. Hallo,
          was ich nur nicht so ganz verstehe ist, wie ich mit der Funktion sowohl die erste Spalte und dann in 2ter Instanz auch noch nach der zweiten Spalte sortieren soll.
          Eine Spalte sortieren kein Problem. Aber die zweite auch noch?

          1. Hi!

            was ich nur nicht so ganz verstehe ist, wie ich mit der Funktion sowohl die erste Spalte und dann in 2ter Instanz auch noch nach der zweiten Spalte sortieren soll.

            Meine Antwort hast du gelesen?

            Lo!

      2. Hi!

        Kannst du mir das mit der Vergleichsfunktion vllt. ein bisschen genauer erklären?

        Im Allgemeinen ist es so: Wenn das erste Kriterium schon "größer" oder "kleiner" ergibt, dann ist der Fall erledigt. Wenn es "gleich" ergibt, ist das Ergebnis des zweiten Kriteriums das Vergleichsergebnis.

        Lo!

  2. Hallo,

    möglich ist alles, vielleicht bekommst du eher Hilfe, wenn du ein kleines Beispiel einstellst mit zwei,dre Datensätzen.

    Gruß

    jobo