2dim array sortieren

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

  • 2dim array sortieren

    gibt es in PHP eine möglichkeit einen 2dim array nach einer beliebigen spalte zu sortieren?

    mfg mosez

  • #2
    sry, habs schon gefunden:
    http://www.php-resource.de/forum/sho...&threadid=7558

    Kommentar


    • #3
      funkt doch ned, ich will ja nach einer BELIEBIGEN spalte sortieren . hat irgendwer lösungsvorschlöge
      mfg mosez

      Kommentar


      • #4
        soweit ich weiß, gibt's da nix fertiges bei php...(ausser vielleicht 'array_multisort()'?)
        wirst du wohl von hand machen müssen.

        ich würde erstmal nen neues array machen, mit den werten der zu sortierenden spalte als schlüssel und die restlichen werte der zeile als 'werte-array'..., dann kannst du mit ksort() rüber... fertig.
        Zuletzt geändert von slarti; 08.07.2002, 14:26.
        eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

        Kommentar


        • #5
          array_multisort() ist da nicht für geeignet.
          Ich hab´s noch nie gebraucht, das Sortieren hab ich bisher immer mySQL überlassen; aber wer´s braucht:
          PHP-Code:
          // Namen der Spalten, nach denen sortiert werden soll:
          // vorangestelltes '-' = absteigend
          // # = numerisch
          $spalten = array('NACHNAME''VORNAME''-LASTPOST');
          function 
          colcmp($a$b)
          {
            global 
          $spalten;
            for (
          $k=0$k<count($spalten); $k++)
            {
              
          $col $spalten[$k];
              if (
          substr($col01)=='-')
              {
                
          $m = -1;
                
          $col substr($col1);
              }
              else
                
          $m 1;
              if (
          $a[$col] > $b[$col])
                return 
          $m;
              elseif (
          $a[$col] < $b[$col])
                return -
          $m;
            }
            return 
          0;

          1. $spalten definieren
          2. Array mit usort ($array, 'colcmp'); sortieren
          mein Sport: mein Frühstück: meine Arbeit:

          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

          Kommentar

          Lädt...
          X