Mehrdimensionales array sortieren
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
array
beispiel
code
dank
fehler
garnichts
interpreter
jemand
nutzen
schleife
schnelle antwort
versuch
-
hallo,
ich habe ein mehrdimensionales array, wie zum Beispiel das hier:
$array = array(); $array[1] = array(); $array[1][1] = "1:1"; $array[1][10] = "1:10"; $array[1][2] = "1:2"; $array[2] = array(); $array[2][1] = "2:1"; $array[2][10] = "2:10"; $array[2][2] = "2:2";
und das soll dann so sortiert werden, dass folgendes herauskommt:
1:1
1:2
1:10
2:1
2:2
2:10
ich hoffe jemand weiß wie das gehen könnte
gruss
Beitrag zuletzt geändert: 4.4.2009 22:50:51 von moonfight -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Versuchs mal damit:
<?php $array = array(); $array[1] = array(); $array[1][1] = "1:1"; $array[1][10] = "1:10"; $array[1][2] = "1:2"; $array[2] = array(); $array[2][1] = "2:1"; $array[2][10] = "2:10"; $array[2][2] = "2:2"; $anzahl1 = count($array); for ($i = 1; $i <= $anzahl1; $i++) { $anzahl2 = count($array[$i]); for ($i2 = 1; $i2 <= $anzahl2; $i2++) { echo $array[$i][$i2]."<br />"; } } ?>
Is aber ungetestet und ich bin mir auch nicht sicher, ob es geht.
Beitrag zuletzt geändert: 4.4.2009 23:26:55 von cookies -
danke für die schnelle antwort,
aber bei mir gibt dieser code garnichts aus.
Der PHP-Interpreter kommt also garnicht bis zur 3. For-Schleife oder es ist ein anderer Fehler.
gruss
Beitrag zuletzt geändert: 4.4.2009 23:30:23 von moonfight -
ich habs jetzt nochmal geändert (siehe oben), da zeigt es nur die 1:10 und 2:10 nicht an, da es erkennt, dass es keinen 3. Wert gibt. Aber vielleicht kannst du es ja als Gedankenanstoss nutzen.
-
danke ,
hat mir geholfen, habs so gelöst, da ich wusste das $i höchstens 50 und $i2 höchstens 10 sein kann, ging das dann einfach:
<?php $array = array(); $array[1] = array(); $array[1][1] = "1:1"; $array[1][10] = "1:10"; $array[1][2] = "1:2"; $array[2] = array(); $array[2][1] = "2:1"; $array[2][10] = "2:10"; $array[2][2] = "2:2"; for ($i = 1; $i <= 50; $i++) { for ($i2 = 1; $i2 <= 10; $i2++) { if (!empty($array[$i][$i2])) { echo $array[$i][$i2]."<br />"; } } } ?>
DANKE, gruss -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage