#!/usr/bin/perl -w
+
# Strict
use strict;
use warnings;
+
# Libraries
use Carp;
use Data::Dumper;
+
+
my %drink;
# other attribute hashes
+
set('larry', 'drink', 'Old Speckled Hen');
print $drink{'larry'}, "\n";
# print "Dump(\%drink) => [%s]\n", Dumper(\%drink);
+
+
sub set {
my ($key, $attr, $value) = @_;
+
my $hashref;
eval "\$hashref = \\\%$attr";
+
if ( !defined $hashref ) {
carp 'Invalid attribute name';
}
else {
$hashref->{$key} = $value;
}
}
is working for me:
% prog541345.pl
Old Speckled Hen
If that isn't what you're getting, please compare the above code fragment (based on what you provided in your post) to your actual code, and see if that helps locate the problem.
s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/
|