n'abend,
mal wieder das "alphabetische sortieren von mehrdimensionalen arrays" :-(
hab gegoogelt, nichts gefunden
was du im Konkreten falsch gemacht hast, oder einfach nicht bedacht hast, hat dir Martin bereits gezeigt. In meinem tollen vollgemüllten /tests/ Verzeichnis bin ich eben über folgendes gestolpert:
<?php
$array = array(
array( "hallo welt", 1 ),
array( "hallo wald", 2 ),
array( "Heinrich wald", 2 ),
array( "albert wald", 2 ),
array( "adolf wald", 2 ),
array( "adalbert wald", 2 ),
array( "Adolf alban", 2 ),
array( "Ärmel Los", 2 ),
array( "Urmel aus dem Eis", 2 ),
array( "Ürügü Ütschügü", 2 )
);
function sort_callback( $a, $b )
{
// resolve reference and case issues
$a = strtoupper( $a[0] );
$b = strtoupper( $b[0] );
// trim specialchars
$from = array( 'Ä', 'Ö', 'Ü', 'ß' );
$to = array( 'A', 'O', 'U', 'SS' );
str_replace( $from, $to, $a);
str_replace( $from, $to, $b);
// evaluate position
return $a == $b ? 0 : $a > $b ? 1 : -1;
}
echo "<pre>";
print_r( $array );
echo "</pre>";
usort( $array, "sort_callback" );
echo "<pre>";
print_r( $array );
echo "</pre>";
?>
Das ist zwar mit Sicherheit nicht die edelste aller möglichen Lösungen, hatte mir aber damals gereicht.
weiterhin schönen abend...
--
Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|
Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|