Есть ли хороший класс для работы с URL в PHP? - PullRequest
3 голосов
/ 02 декабря 2008

Есть ли общепринятый класс для работы с URL в PHP?

Такие вещи, как: получение / изменение частей существующего URL (например, путь, схема и т. Д.), Разрешение относительных путей из базового URL. Вроде как двусторонний parse_url () , инкапсулированный с кучей полезных функций.

Существует ли что-то подобное?

Ответы [ 3 ]

4 голосов
/ 02 декабря 2008

Этот URL.php класс может быть хорошим началом (хотя и не уверен, что он "широко" принят).

Класс URL, предназначенный для схем http и https

Этот класс позволяет хранить абсолютные или относительные URL-адреса и получать доступ к различным его частям (схема, хост, порт, часть, запрос, фрагмент).

Он также будет принимать и пытаться разрешить относительный URL-адрес по отношению к уже сохраненному абсолютному URL-адресу.

Примечание: этот класс URL основан на схеме HTTP.

Пример:

$url =& new URL('http://www.domain.com/path/file.php?query=blah');
echo $url->get_scheme(),"\n";    // http
echo $url->get_host(),"\n";      // www.domain.com
echo $url->get_path(),"\n";      // /path/file.php
echo $url->get_query(),"\n";     // query=blah
// Setting a relative URL against our existing URL
$url->set_relative('../great.php');
echo $url->as_string(); // http://www.domain.com/great.php
3 голосов
/ 02 декабря 2008

У вас есть пакет Net_URL2 в PEAR, который, похоже, заменил оригинальный Net_URL . У меня нет непосредственного опыта с этим, но я почти всегда беру пакет PEAR вместо "случайной библиотеки, найденной на веб-сайте".

0 голосов
/ 02 декабря 2008

Zend_Uri - хороший кандидат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...