php-doc-en/reference/url/functions/parse-url.xml
2003-12-15 16:55:22 +00:00

123 lines
3.2 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.9 $ -->
<!-- splitted from ./en/functions/url.xml, last change in rev 1.2 -->
<refentry id="function.parse-url">
<refnamediv>
<refname>parse_url</refname>
<refpurpose>Parse a URL and return its components</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<methodsynopsis>
<type>array</type><methodname>parse_url</methodname>
<methodparam><type>string</type><parameter>url</parameter></methodparam>
</methodsynopsis>
<para>
This function returns an associative array containing any of the
various components of the URL that are present. If one of them is
missing, no entry will be created for it. The components are :
<itemizedlist>
<listitem>
<simpara>
<structfield>scheme</structfield> - e.g. http
</simpara>
</listitem>
<listitem>
<simpara>
<structfield>host</structfield>
</simpara>
</listitem>
<listitem>
<simpara>
<structfield>port</structfield>
</simpara>
</listitem>
<listitem>
<simpara>
<structfield>user</structfield>
</simpara>
</listitem>
<listitem>
<simpara>
<structfield>pass</structfield>
</simpara>
</listitem>
<listitem>
<simpara>
<structfield>path</structfield>
</simpara>
</listitem>
<listitem>
<simpara>
<structfield>query</structfield> - after the question mark <literal>?</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<structfield>fragment</structfield> - after the hashmark <literal>#</literal>
</simpara>
</listitem>
</itemizedlist>
</para>
<para>
This function is <emphasis role="strong">not</emphasis> meant to validate
the given URL, it only breaks it up into the above listed parts. Partial
URLs are also accepted, <function>parse_url</function> tries its best to
parse them correctly.
</para>
<note>
<para>
This function doesn't work with relative URLs.
</para>
</note>
<example>
<title><function>parse_url</function> example</title>
<screen>
$ php -r 'print_r(parse_url("http://username:password@hostname/path?arg=value#anchor"));'
Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)
$ php -r 'print_r(parse_url("http://invalid_host..name/"));'
Array
(
[scheme] => http
[host] => invalid_host..name
[path] => /
)
</screen>
</example>
<para>
See also <function>pathinfo</function>, <function>parse_str</function>,
<function>dirname</function>, and <function>basename</function>.
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->