是否有一个很好的预先存在的类来处理PHP中的URL?

时间:2008-12-02 06:42:48

标签: php url

是否有广泛接受的用于处理PHP中URL的类?

类似于:获取/更改现有URL的部分内容(例如路径,方案等),解析基本URL的相对路径。有点像双向parse_url(),用一堆方便的函数封装。

这样的事情是否存在?

3 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:3)

您在PEAR上获得了Net_URL2个套餐,该套餐似乎已取代original Net_URL。我没有第一手经验,但我几乎总是把“PEAR”包裹放在“网站上的随机库”上。

答案 2 :(得分:-1)

Zend_Uri是一个很好的候选人。