ebiz-webhosting
- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 23-12-2009, 14:27
schlattm
 Newbie
Links : Onlinestatus : schlattm ist offline
Registriert seit: Sep 2006
Beiträge: 69
schlattm ist zur Zeit noch ein unbeschriebenes Blatt
schlattm eine Nachricht über ICQ schicken
Standard Multidimensionales Array sortieren

Hallo zusammen...

Ich stehe gerade extrem auf dem Schlauch. Habe hier auch schon einiges über die Problematik gelesen, aber irgendwie war ich für die Antworten zu doof

Nun, zu meinem Problem. Ich habe ein Array, sagen wir:

PHP-Code:
$a[1]['sort'] = 6;
$a[1]['x'] = "blabal";

$a[2]['sort'] = 3;
$a[2]['x'] = "adfjlka";

$a[3]['sort'] = 9;
$a[3]['x'] = "kadfjl"
das sieht also mit print_r so aus:
Zitat:
Array
(
[1] => Array
(
[sort] => 6
[x] => blabal
)

[2] => Array
(
[sort] => 3
[x] => adfjlka
)

[3] => Array
(
[sort] => 9
[x] => kadfjl
)

)
nun möchte ich das ganze nach [sort] sortieren, also das Array mit dem höchsten [sort]-Wert soll an erster Stelle stehen. Das Ergebnis wäre dann:

Zitat:
Array
(
[1] => Array
(
[sort] => 9
[x] => kadfjl
)

[2] => Array
(
[sort] => 6
[x] => blabal
)

[3] => Array
(
[sort] => 3
[x] => adfjlka
)

)
soweit ich verstanden habe, komme ich mit array_multisort da nicht weiter.

Kann mir wer auf die Sprünge helfen?

Vielen Dank bereits im voraus.

Marco
Mit Zitat antworten
  #2 (permalink)  
Alt 23-12-2009, 14:50
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.550
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

schau dir mal die usort-Familie an, die arbeitet mit einer Vergleichs-Callback-Funktion, in der du dann halt nur
PHP-Code:
$a["sort"] - $b["sort"
zurückgeben musst.

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #3 (permalink)  
Alt 23-12-2009, 16:18
schlattm
 Newbie
Links : Onlinestatus : schlattm ist offline
Registriert seit: Sep 2006
Beiträge: 69
schlattm ist zur Zeit noch ein unbeschriebenes Blatt
schlattm eine Nachricht über ICQ schicken
Standard

Hallo Amica,

ich glaub, ich habs hingekriegt.. (zugegebenerweise noch mit weiterer E-Mail Unterstützung *gg*)

PHP-Code:
$array[1]['sort'] = 6;
$array[1]['x'] = "blabal";
$array[2]['sort'] = 3;
$array[2]['x'] = "adfjlka";
$array[3]['sort'] = 19
$array[3]['x'] = "asdjfladfk";

function 
vergleiche($a$b){
      if (
$a["sort"] <> $b["sort"]) {
             return (
$a["sort"] < $b["sort"]);
            }
            else { 
                return 
strcmp($a["sort"], $b["sort"]);
            }
}

usort($array'vergleiche');

echo 
"<pre>";
print_r($array);
echo 
"</pre>"
=>

Code:
Array
(
    [0] => Array
        (
            [sort] => 19
            [x] => asdjfladfk
        )

    [1] => Array
        (
            [sort] => 6
            [x] => blabal
        )

    [2] => Array
        (
            [sort] => 3
            [x] => adfjlka
        )

)
jetzt muss ichs nur noch kapieren, dann bin ich zufrieden
Mit Zitat antworten
  #4 (permalink)  
Alt 23-12-2009, 18:23
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.550
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Die Vergleichsfunktion ist aber ganz schöner Käse, warum hast du nicht das genommen, was ich gepostet hab?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #5 (permalink)  
Alt 24-12-2009, 07:38
schlattm
 Newbie
Links : Onlinestatus : schlattm ist offline
Registriert seit: Sep 2006
Beiträge: 69
schlattm ist zur Zeit noch ein unbeschriebenes Blatt
schlattm eine Nachricht über ICQ schicken
Standard

wenn ich dich also richtig verstehe, wäre der code der function dann folgendermassen:

PHP-Code:
function vergleiche($a$b){
    return (
$a['sort'] - $b['sort']);

habe das ganze gerade nochmals getestet, scheint als hätte ich gester irgendwas falsch gemacht!! jetzt funktionierts fast *gg*
das ganze wird nur noch falsch sortiert... (möchte den höchsten Wert auf Position 1, den tiefsten auf der letzten)

lese mich nochmals durchs manual

*join*

leider kann ich meinen Beitrag nicht editieren, deshalb der Doppelpost, sorry...

wenn man doch nur logisch überlegen würde... dann macht das ja dann

PHP-Code:
function vergleiche($a$b){
    return (
$b['sort'] - $a['sort']);

so einfach wärs... danke dir dass du mir auf die sprünge geholfen hast

Geändert von AmicaNoctis (24-12-2009 um 08:24 Uhr) Grund: zusammengeführt
Mit Zitat antworten
  #6 (permalink)  
Alt 24-12-2009, 07:41
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.550
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von schlattm Beitrag anzeigen
wenn ich dich also richtig verstehe, wäre der code der function dann folgendermassen:

PHP-Code:
function vergleiche($a$b){
    return (
$a['sort'] - $b['sort']);

Genau, aber wenn du es absteigend haben möchtest, musst du noch $a und $b vertauschen:
PHP-Code:
function vergleiche ($a$b) {
    return 
$b['sort'] - $a['sort'];

Edit: doch zu langsam...
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!

Geändert von AmicaNoctis (24-12-2009 um 08:23 Uhr)
Mit Zitat antworten
  #7 (permalink)  
Alt 24-12-2009, 07:54
schlattm
 Newbie
Links : Onlinestatus : schlattm ist offline
Registriert seit: Sep 2006
Beiträge: 69
schlattm ist zur Zeit noch ein unbeschriebenes Blatt
schlattm eine Nachricht über ICQ schicken
Thumbs up

ja, habs grad danach auch rausgekriegt... hihi



denke das Thema kann als erledigt markiert werden!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
multidimensionales array sortieren jay-ar PHP Developer Forum 2 05-06-2009 00:24
Multidimensionales Array sortieren Nordin PHP Developer Forum 5 05-05-2009 00:12
Multidimensionales Array sortieren! Schanz PHP Developer Forum 1 10-08-2008 16:05
Multidimensionales Array sortieren Dr.Speck BRAINSTORMING PHP/SQL/HTML/JS/CSS 9 17-09-2007 20:19
Multidimensionales Array in Eindimensionales Array konvertieren reallife PHP Developer Forum 0 30-10-2005 11:13

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:20 Uhr.