use Data::Dumper; print Dumper(+{ unsorted => \@array });
@array = sort {
$$a[0] <=> $$b[0] or
$$a[1] <=> $$b[1] or
$$a[2] <=> $$b[2]
} @array;
use Data::Dumper; print Dumper(+{
sorted_on_first_three_elements => \@array });
####
use Data::Dumper; print Dumper(+{ unsorted => \@array });
@array = sort {
for my $i (0 .. $#a) {
if (not ($$a[$i] == $$b[$i])) {
return $$a[$i] <=> $$b[$i];
}
}
return 0;
} @array;
use Data::Dumper; print Dumper(+{ sorted => \@array });
####
my @user = (
# [ username, fullname, authlevel, { otherinfo } ],
[ 'george', 'George Jetson', $AUTH_EMPLOYEE,
{ supervisor => 'spaceley', pet => 'astro', } ],
[ 'astro', 'Astro', $AUTH_BASIC,
{ supervisor => 'george', } ],
[ 'hhoyt', 'Herman Hoyt', $AUTH_PROFESSOR,
{ supervisor => 'amcclain', department => 'theology', } ],
# and so on and so forth
);