#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my $arr = { a => { b => 'c', d => { e => { x => 'y', k => [ 'A'...'Z'], } } , }, f => { g => 'h', i => 'm' } }; sub arr_parse { my $data = shift; my @params = @_; my $newdata = $data; foreach my $parm (@params) { if (ref $newdata eq 'ARRAY') { $newdata = $newdata->[$parm] } elsif (ref $newdata eq 'HASH') { $newdata = $newdata->{$parm} } else { last } } return $newdata } my $retval = arr_parse( $arr, qw{a d e x} ); print Dumper( $retval ) . "\n"; my $retval2 = arr_parse( $arr, qw{a d e k 15} ); print Dumper( $retval2 ) . "\n";
In reply to Re: unblessed reference problem
by james2vegas
in thread unblessed reference problem
by gdolph
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |