【发布时间】:2008-12-02 06:42:48
【问题描述】:
在 PHP 中是否有一个被广泛接受的处理 URL 的类?
诸如:获取/更改现有 URL 的某些部分(例如路径、方案等),从基本 URL 解析相对路径。有点像双向parse_url(),封装了一堆方便的函数。
这样的东西存在吗?
【问题讨论】:
在 PHP 中是否有一个被广泛接受的处理 URL 的类?
诸如:获取/更改现有 URL 的某些部分(例如路径、方案等),从基本 URL 解析相对路径。有点像双向parse_url(),封装了一堆方便的函数。
这样的东西存在吗?
【问题讨论】:
这个 URL.php class 可能是一个好的开始(但不确定它是否被“广泛”接受)。
用于 http 和 https 方案的 URL 类
此类允许您存储绝对或相对 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
【讨论】:
您在 PEAR 获得了 Net_URL2 包,它似乎已经取代了 original Net_URL。我没有第一手经验,但我几乎总是会使用 PEAR 包而不是“在网站上找到的随机库”。
【讨论】:
Zend_Uri 是一个不错的候选人。
【讨论】: