RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Web
Expertise: Advanced
Jan 22, 1999

Sorting a Two-Dimensional Array With <=>

The Perl sort function is useful for alphabetically sorting lists. However, you can't use it on a list of lists, because once a list starts listing other lists, they cease to be lists and become references instead. By sorting arrays within arrays, it's possible to gain relational database-like control over data grids.

For example, let's say I have a list of lists called @biglist. To print all of its unsorted contents, I would write:

for $list_ref ( @biglist ) {
	print "@$list_ref \n";
To sort @biglist by the first element in each list, I would write:
for $list_ref ( sort { $a->[0] <=> $b->[0] } @biglist ) {
    print " @$list_ref \n";
Steve Renaker
Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date