QueryParam(3)
NAME
URI::QueryParam - Additional query methods for URIs
SYNOPSIS
use URI;
use URI::QueryParam;
$u = URI->new("", "http");
$u->query_param(foo => 1, 2, 3);
print $u->query; # prints foo=1&foo=2&foo=3
for my $key ($u->query_param) {
print "$key: ", join(", ", $u->query_param($key)), "\n";
}
DESCRIPTION
Loading the "URI::QueryParam" module adds some extra methods to URIs
that support query methods. These methods provide an alternative
interface to the $u->query_form data.
The query_param_* methods have deliberately been made identical to the
interface of the corresponding "CGI.pm" methods.
The following additional methods are made available:
@keys = $u->query_param
@values = $u->query_param( $key )
$first_value = $u->query_param( $key )
$u->query_param( $key, $value,... )
If $u->query_param is called with no arguments, it returns all the
distinct parameter keys of the URI. In a scalar context it returns
the number of distinct keys.
When a $key argument is given, the method returns the parameter
values with the given key. In a scalar context, only the first
parameter value is returned.
If additional arguments are given, they are used to update succes-
sive parameters with the given key. If any of the values provided
are array references, then the array is dereferenced to get the
actual values.
$u->query_param_append($key, $value,...)
Adds new parameters with the given key without touching any old
parameters with the same key. It can be explained as a more effi-
cient version of:
$u->query_param($key,
$u->query_param($key),
$value,...);
One difference is that this expression would return the old values
of $key, whereas the query_param_append() method does not.
@values = $u->query_param_delete($key)
$first_value = $u->query_param_delete($key)
Deletes all key/value pairs with the given key. The old values are
returned. In a scalar context, only the first value is returned.
Using the query_param_delete() method is slightly more efficient
than the equivalent:
$u->query_param($key, []);
$hashref = $u->query_form_hash
$u->query_form_hash( \%new_form )
Returns a reference to a hash that represents the query form's
key/value pairs. If a key occurs multiple times, then the hash
value becomes an array reference.
Note that sequence information is lost. This means that:
$u->query_form_hash($u->query_form_hash)
is not necessarily a no-op, as it may reorder the key/value pairs.
The values returned by the query_param() method should stay the
same though.
SEE ALSO
URI, CGI
COPYRIGHT
Copyright 2002 Gisle Aas.
perl v5.8.6 2004-01-14 URI::QueryParam(3)
Man(1) output converted with
man2html