ProfiPHPProfiPHP
  1. Главная
  2. Функции для работы с URL
  3. Функция Parse_url

Функция Parse_url

Функция Parse_url разбирает URL и возвращает его компоненты.
mixed parse_url( string $url [, int $component = -1 ] )
Функция Parse_url разбирает URL и возвращает ассоциативный массив, содержащий все компоненты URL, которые в нем присутствуют. Элементы массива не будут декодированы как URL.

Эта функция не предназначена для проверки на корректность данного URL, она только разбивает его на нижеперечисленные части.

Параметр URL содержит URL для разбора. Недопустимые символы будут заменены на знаки подчеркивания _.

Если функция Parse_url принимает второй параметр Component, вместо массива возвращается строка с одним из компонентов строки запроса в виде строки (string). Исключением является указание PHP_URL_PORT, в этом случае возвращаемое значение будет типа Integer. Параметр может принимать следующие константы:

PHP_URL_SCHEМE - префикс (http, https, ftp и т.п.);

PHP_URL_HOST - домен;

PHP_URL_PORT - номер порта;

PHP_URL_USER - пользователь;

PHP_URL_PASS - его пароль;

PHP_URL_PATH - путь от корневого каталога;

PHP_URL_QUERY - все, что расположено после символа вопроса (?);

PHP_URL_FRAGMENT - все, что расположено после символа #.

Функция Parse_url при разборе значительно некорректных URL-адресов может вернуть FALSE.

Если параметр Component будет опущен, функция возвратит ассоциативный массив (array). В массиве будет находиться по крайней мере один элемент.

Функция Parse_url возвратит от­дельные его компоненты в виде ассоциативного массива со следующими ключами:

scheme - префикс (http, https, ftp и т.п.)

host - домен;

port - номер порта;

user - пользователь;

pass - его пароль;

path - путь от корневого каталога;

query - все, что расположено после символа вопроса (?);

fragment - все, что расположено после символа #.

Если параметр Component определен, функция вернет строку (string) (или число (integer), в случае PHP_URL_PORT) вместо массива (array). Если запрошенный компонент не существует в данном URL, будет возвращен NULL.

Пример использования функции Parse_url:
$url = 'http://profiphp.ru/functions.html';
print_r( parse_url( $url ) );
Функция вернет массив:
[scheme] => http
[host] => profiphp.ru
[path] => /functions.html

Добавить комментарий

Имя:
Текст комментария: