On Jun 18, 11:27 am, [EMAIL PROTECTED] (Graeme McLaren)
wrote:
> Hi all, I'm in need of a loop, can't seem to find what I'm looking for
> online. I want to loop over this array ref inserting each hash value into
> the DB at each iteration.I've got the following data structure which is
> assigned to $aref:
>
> $VAR1 = [ { 'rate' => '1.98', 'name' =>
> 'Dollars -> Sterling' }, { 'rate' => '1.5',
> 'name' => 'Sterling -> Euros' }, { 'rate'
> => '0.75', 'name' => 'Dollars -> Euros' }, {
> 'rate' => '2.05', 'name' => 'Sterling -> Dollars'
> }, { 'rate' => '0.72', 'name' => 'Euro ->
> Sterling' }, { 'rate' => '1.52',
> 'name' => 'Euro -> Dollars' }, { 'rate' =>
> '1.98', 'name' => 'Amex Exchange Rate' } ];
>
> Can anyone help out with this?
>
> Much appreciated.
>
> G :)
Since you are dealing with an array of hashes you can use foreach to
loop over your data structure.
use strict;
use warnings;
my $VAR1 = [
{
'rate' => '1.98',
'name' => 'Dollars -> Sterling'
}, { 'rate' => '1.5',
'name' => 'Sterling -> Euros' }, { 'rate'
=> '0.75', 'name' => 'Dollars ->
Euros' }, { 'rate' => '2.05',
'name' => 'Sterling -> Dollars' },
{ 'rate' => '0.72', 'name' => 'Euro ->
Sterling' }, { 'rate' =>
'1.52', 'name' => 'Euro -> Dollars' },
{ 'rate' => '1.98', 'name' => 'Amex Exchange
Rate' } ];
foreach my $entry (@$VAR1){
print "Entry\n";
print " Name: $entry->{name}\n";
print " Rate: $entry->{rate}\n";
my $statement = "INSERT \'$entry->{name}\', \'$entry->{rate}\'
INTO your_table";
print "$statement\n";
}
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/