X7ROOT File Manager
Current Path:
/usr/share/perl5/URI
usr
/
share
/
perl5
/
URI
/
??
..
??
Escape.pm
(6.9 KB)
??
Heuristic.pm
(6.37 KB)
??
IRI.pm
(820 B)
??
QueryParam.pm
(4.77 KB)
??
Split.pm
(2.32 KB)
??
URL.pm
(5.36 KB)
??
WithBase.pm
(3.77 KB)
??
_foreign.pm
(133 B)
??
_generic.pm
(5.71 KB)
??
_idna.pm
(2.06 KB)
??
_ldap.pm
(3.2 KB)
??
_login.pm
(257 B)
??
_punycode.pm
(5.52 KB)
??
_query.pm
(2.5 KB)
??
_segment.pm
(442 B)
??
_server.pm
(3.66 KB)
??
_userpass.pm
(1.04 KB)
??
data.pm
(3.34 KB)
??
file
??
file.pm
(9.53 KB)
??
ftp.pm
(1.06 KB)
??
gopher.pm
(2.4 KB)
??
http.pm
(451 B)
??
https.pm
(170 B)
??
ldap.pm
(2.88 KB)
??
ldapi.pm
(467 B)
??
ldaps.pm
(170 B)
??
mailto.pm
(1.27 KB)
??
mms.pm
(151 B)
??
news.pm
(1.45 KB)
??
nntp.pm
(153 B)
??
pop.pm
(1.2 KB)
??
rlogin.pm
(155 B)
??
rsync.pm
(233 B)
??
rtsp.pm
(151 B)
??
rtspu.pm
(152 B)
??
sftp.pm
(124 B)
??
sip.pm
(1.69 KB)
??
sips.pm
(169 B)
??
snews.pm
(198 B)
??
ssh.pm
(201 B)
??
telnet.pm
(154 B)
??
tn3270.pm
(154 B)
??
urn
??
urn.pm
(2.15 KB)
Editing: _query.pm
package URI::_query; use strict; use warnings; use URI (); use URI::Escape qw(uri_unescape); our $VERSION = '1.73'; $VERSION = eval $VERSION; sub query { my $self = shift; $$self =~ m,^([^?\#]*)(?:\?([^\#]*))?(.*)$,s or die; if (@_) { my $q = shift; $$self = $1; if (defined $q) { $q =~ s/([^$URI::uric])/ URI::Escape::escape_char($1)/ego; utf8::downgrade($q); $$self .= "?$q"; } $$self .= $3; } $2; } # Handle ...?foo=bar&bar=foo type of query sub query_form { my $self = shift; my $old = $self->query; if (@_) { # Try to set query string my $delim; my $r = $_[0]; if (ref($r) eq "ARRAY") { $delim = $_[1]; @_ = @$r; } elsif (ref($r) eq "HASH") { $delim = $_[1]; @_ = map { $_ => $r->{$_} } sort keys %$r; } $delim = pop if @_ % 2; my @query; while (my($key,$vals) = splice(@_, 0, 2)) { $key = '' unless defined $key; $key =~ s/([;\/?:@&=+,\$\[\]%])/ URI::Escape::escape_char($1)/eg; $key =~ s/ /+/g; $vals = [ref($vals) eq "ARRAY" ? @$vals : $vals]; for my $val (@$vals) { $val = '' unless defined $val; $val =~ s/([;\/?:@&=+,\$\[\]%])/ URI::Escape::escape_char($1)/eg; $val =~ s/ /+/g; push(@query, "$key=$val"); } } if (@query) { unless ($delim) { $delim = $1 if $old && $old =~ /([&;])/; $delim ||= $URI::DEFAULT_QUERY_FORM_DELIMITER || "&"; } $self->query(join($delim, @query)); } else { $self->query(undef); } } return if !defined($old) || !length($old) || !defined(wantarray); return unless $old =~ /=/; # not a form map { s/\+/ /g; uri_unescape($_) } map { /=/ ? split(/=/, $_, 2) : ($_ => '')} split(/[&;]/, $old); } # Handle ...?dog+bones type of query sub query_keywords { my $self = shift; my $old = $self->query; if (@_) { # Try to set query string my @copy = @_; @copy = @{$copy[0]} if @copy == 1 && ref($copy[0]) eq "ARRAY"; for (@copy) { s/([;\/?:@&=+,\$\[\]%])/ URI::Escape::escape_char($1)/eg; } $self->query(@copy ? join('+', @copy) : undef); } return if !defined($old) || !defined(wantarray); return if $old =~ /=/; # not keywords, but a form map { uri_unescape($_) } split(/\+/, $old, -1); } # Some URI::URL compatibility stuff sub equery { goto &query } 1;
Upload File
Create Folder