PHP 7.4.33
Preview: Split.pm Size: 2.32 KB
/home/godevadmin/public_html/upload_images/home/000~ROOT~000/usr/share/perl5/URI/Split.pm

package URI::Split;

use strict;
use warnings;

our $VERSION = '1.73';
$VERSION = eval $VERSION;

use Exporter 5.57 'import';
our @EXPORT_OK = qw(uri_split uri_join);

use URI::Escape ();

sub uri_split {
     return $_[0] =~ m,(?:([^:/?#]+):)?(?://([^/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?,;
}

sub uri_join {
    my($scheme, $auth, $path, $query, $frag) = @_;
    my $uri = defined($scheme) ? "$scheme:" : "";
    $path = "" unless defined $path;
    if (defined $auth) {
	$auth =~ s,([/?\#]), URI::Escape::escape_char($1),eg;
	$uri .= "//$auth";
	$path = "/$path" if length($path) && $path !~ m,^/,;
    }
    elsif ($path =~ m,^//,) {
	$uri .= "//";  # XXX force empty auth
    }
    unless (length $uri) {
	$path =~ s,(:), URI::Escape::escape_char($1),e while $path =~ m,^[^:/?\#]+:,;
    }
    $path =~ s,([?\#]), URI::Escape::escape_char($1),eg;
    $uri .= $path;
    if (defined $query) {
	$query =~ s,(\#), URI::Escape::escape_char($1),eg;
	$uri .= "?$query";
    }
    $uri .= "#$frag" if defined $frag;
    $uri;
}

1;

__END__

=head1 NAME

URI::Split - Parse and compose URI strings

=head1 SYNOPSIS

 use URI::Split qw(uri_split uri_join);
 ($scheme, $auth, $path, $query, $frag) = uri_split($uri);
 $uri = uri_join($scheme, $auth, $path, $query, $frag);

=head1 DESCRIPTION

Provides functions to parse and compose URI
strings.  The following functions are provided:

=over

=item ($scheme, $auth, $path, $query, $frag) = uri_split($uri)

Breaks up a URI string into its component
parts.  An C<undef> value is returned for those parts that are not
present.  The $path part is always present (but can be the empty
string) and is thus never returned as C<undef>.

No sensible value is returned if this function is called in a scalar
context.

=item $uri = uri_join($scheme, $auth, $path, $query, $frag)

Puts together a URI string from its parts.
Missing parts are signaled by passing C<undef> for the corresponding
argument.

Minimal escaping is applied to parts that contain reserved chars
that would confuse a parser.  For instance, any occurrence of '?' or '#'
in $path is always escaped, as it would otherwise be parsed back
as a query or fragment.

=back

=head1 SEE ALSO

L<URI>, L<URI::Escape>

=head1 COPYRIGHT

Copyright 2003, Gisle Aas

This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.

=cut

Directory Contents

Dirs: 2 × Files: 43

Name Size Perms Modified Actions
file DIR
- drwxr-xr-x 2024-08-07 14:24:37
Edit Download
urn DIR
- drwxr-xr-x 2024-08-07 14:24:37
Edit Download
3.34 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
6.90 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
9.53 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
1.06 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
2.40 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
6.37 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
451 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
170 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
820 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
2.88 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
467 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
170 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
1.27 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
151 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
1.45 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
153 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
1.20 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
4.77 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
155 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
233 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
151 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
152 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
124 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
1.69 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
169 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
198 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
2.32 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
201 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
154 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
154 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
5.36 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
2.15 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
3.77 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
133 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
5.71 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
2.06 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
3.20 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
257 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
5.52 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
2.50 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
442 B lrw-r--r-- 2018-01-09 06:42:55
Edit Download
3.66 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download
1.04 KB lrw-r--r-- 2018-01-09 06:42:55
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).