Doug MacEachern wrote:
> > OK, if this is the case, I'd prefer to have only one variable type -- an
> > array - so $r->dir_config will always return a list. So if it's a
> > sigular value, it'll be the first element. If you want it to be a hash
> > -- you can have it as well. This makes thing simple and even eliminates
> > the need for PerlSetVar, you can have only PerlAddVar for everything.
>
> my @values = $r->dir_config->get('Key');
> and
> my %hash = $r->dir_config->get('Key');
>
> already does that, regardless of using PerlSetVar or PerlAddVar.
> although, PerlSetVar would end up with odd number of elements for %hash.
Well, it doesn't work for me. It returns a stringified version of the ref
to a hash or an array. I think you have already mentioned this before, I
thought it was changed since than.
<Perl>
my %hash = qw(a b c d);
push @{ $Location{"/perl"}->{PerlSetVar} }, [ hashkey => \%hash ];
my @arr = qw(e f g h);
push @{ $Location{"/perl"}->{PerlSetVar} }, [ arrkey => \@arr ];
</Perl>
In the code:
my @values = $r->dir_config->get('arrkey');
my %hash = $r->dir_config->get('hashkey');
returns a stringified:
values: ARRAY(0x82ee120)
hash: HASH(0x82ee090)
which cannot be dereferenced.
Do I miss something?
______________________________________________________________________
Stas Bekman | JAm_pH -- Just Another mod_perl Hacker
http://stason.org/ | mod_perl Guide http://perl.apache.org/guide
mailto:[EMAIL PROTECTED] | http://perl.org http://stason.org/TULARC/
http://singlesheaven.com| http://perlmonth.com http://sourcegarden.org
----------------------------------------------------------------------