One small point of terminology, "param" _never_ returns an array. It returns a list. The difference can be important.
Here's some code that does what (I think) you want.
my %params; foreach (param) { $params{$_} = [ param($_) ]; $params{$_} = $params{$_}[0] if @{$params{$_}} == 1; }
You'll end up with a hash (%params) that contains a key/value pair for each parameter name. If the parameter is single-valued the value will contain that (single) value. If the parameter is multi-valued, then the value will be a reference to an anonymous array containing all of the values.
"The first rule of Perl club is you do not talk about
Perl club."
-- Chip Salzenberg
In reply to Re: CGI.pm: $q->param can be an array. Can be a single value. How do you know which?
by davorg
in thread CGI.pm: $q->param can be an array. Can be a single value. How do you know which?
by woozy
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |