Use a hash instead:
#!/usr/bin/perl use warnings; use strict; my %booksByBorrower = ( adam => {"Learning Perl" => {borrowed => '2015-12-17'}}, jake => {"Programming Perl" => {borrowed => '2015-12-08'}}, john => {"Programming Perl" => {borrowed => '2015-12-12'}}, betty => {"High Order Perl" => {borrowed => '2015-12-10'}}, ); for my $name (sort keys %booksByBorrower) { print "$name\n"; for my $book (sort keys %{$booksByBorrower{$name}}) { print " Borrowed $book $booksByBorrower{$name}{$book}{borrowe +d}\n"; } }
Prints:
adam Borrowed Learning Perl 2015-12-17 betty Borrowed High Order Perl 2015-12-10 jake Borrowed Programming Perl 2015-12-08 john Borrowed Programming Perl 2015-12-12
Of course for this sort of task you should really be using a database, but that's a little heavy for such a trivial example.
In reply to Re: Derive a variable name from a variable?
by GrandFather
in thread Derive a variable name from a variable?
by mavericknik
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |