X7ROOT File Manager
Current Path:
/usr/share/perl5/URI
usr
/
share
/
perl5
/
URI
/
📁
..
📄
Escape.pm
(6.49 KB)
📄
Heuristic.pm
(6.41 KB)
📄
IRI.pm
(769 B)
📄
QueryParam.pm
(4.47 KB)
📄
Split.pm
(2.3 KB)
📄
URL.pm
(5.4 KB)
📄
WithBase.pm
(3.74 KB)
📄
_foreign.pm
(75 B)
📄
_generic.pm
(5.63 KB)
📄
_idna.pm
(1.99 KB)
📄
_ldap.pm
(3.17 KB)
📄
_login.pm
(222 B)
📄
_punycode.pm
(4.52 KB)
📄
_query.pm
(2.39 KB)
📄
_segment.pm
(377 B)
📄
_server.pm
(3.62 KB)
📄
_userpass.pm
(977 B)
📄
data.pm
(3.28 KB)
📁
file
📄
file.pm
(9.58 KB)
📄
ftp.pm
(1.03 KB)
📄
gopher.pm
(2.34 KB)
📄
http.pm
(405 B)
📄
https.pm
(107 B)
📄
ldap.pm
(2.9 KB)
📄
ldapi.pm
(460 B)
📄
ldaps.pm
(107 B)
📄
mailto.pm
(1.24 KB)
📄
mms.pm
(89 B)
📄
news.pm
(1.39 KB)
📄
nntp.pm
(91 B)
📄
pop.pm
(1.15 KB)
📄
rlogin.pm
(96 B)
📄
rsync.pm
(197 B)
📄
rtsp.pm
(89 B)
📄
rtspu.pm
(90 B)
📄
sip.pm
(1.72 KB)
📄
sips.pm
(105 B)
📄
snews.pm
(136 B)
📄
ssh.pm
(140 B)
📄
telnet.pm
(95 B)
📄
tn3270.pm
(95 B)
📁
urn
📄
urn.pm
(1.91 KB)
Editing: _query.pm
package URI::_query; use strict; use URI (); use URI::Escape qw(uri_unescape); 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]; @_ = %$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 *equery = \&query; 1;
Upload File
Create Folder