Hi
ich habe ein mehrdimensionales Array, welches folgende Struktur hat:
Dieses möchte ich jetzt sortieren lassen. Soweit klappt das auch:
Ich möchte aber, dass der User angeben kann, nach was sortiert werden kann. Kann ich das in eine Funktion irgendwie zusammenfassen?
Weil bisher kam ich nur so weit, dass ich mehr cmp funktionen schreibe und dann eben mit if unterscheide:
Hab das nicht getestet, dürfte aber klappen. Das Problem, ich muss dann 12 funktionen ungefähr schreiben und dadurch viele Redundanzen.
Wie würdet ihr das angehen? Danke für Tipps.
(falls ich mich unklar ausdrückte, bitte sagt es )
MFG
ich habe ein mehrdimensionales Array, welches folgende Struktur hat:
Code:
[0] => Array ( [frachtid] => 6 [fahrzeug] => fracht [stellplaetze] => 8 [abland] => D [abplz] => 74564 [abort] => Crailsheim [abvon] => 1151222400 [abbis] => 1151225100 [anland] => D [anplz] => 74545 [anort] => SHA - Michelfeld [anvon] => 1151280900 [anbis] => 1151301600 ) [...]
PHP-Code:
<?php
function cmp($a, $b) {
if($a['abvon'] == $b['abvon']) {
return 0;
}
return ($a['abvon'] > $b['abvon']) ? 1 : -1;
}
usort($angsort, "cmp");
?>
Weil bisher kam ich nur so weit, dass ich mehr cmp funktionen schreibe und dann eben mit if unterscheide:
PHP-Code:
<?php
function cmp_abvon($a, $b) {
if($a['abvon'] == $b['abvon']) {
return 0;
}
return ($a['abvon'] > $b['abvon']) ? 1 : -1;
}
function cmp_abort($a, $b) {
if($a['abort'] == $b['abort']) {
return 0;
}
return ($a['abort'] > $b['abort']) ? 1 : -1;
}
if($_GET['sort'] == 'abort') {
usort($angsort, "cmp_". $_GET['sort']);
}
?>
Wie würdet ihr das angehen? Danke für Tipps.
(falls ich mich unklar ausdrückte, bitte sagt es )
MFG
Kommentar