【问题标题】:Is there a good pre-existing class for dealing with URLs in PHP?是否有一个很好的预先存在的类来处理 PHP 中的 URL?
【发布时间】:2008-12-02 06:42:48
【问题描述】:

在 PHP 中是否有一个被广泛接受的处理 URL 的类?

诸如:获取/更改现有 URL 的某些部分(例如路径、方案等),从基本 URL 解析相对路径。有点像双向parse_url(),封装了一堆方便的函数。

这样的东西存在吗?

【问题讨论】:

    标签: php url


    【解决方案1】:

    这个 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
    

    【讨论】:

      【解决方案2】:

      您在 PEAR 获得了 Net_URL2 包,它似乎已经取代了 original Net_URL。我没有第一手经验,但我几乎总是会使用 PEAR 包而不是“在网站上找到的随机库”。

      【讨论】:

        【解决方案3】:

        Zend_Uri 是一个不错的候选人。

        【讨论】:

          猜你喜欢
          • 2010-09-08
          • 2013-07-09
          • 1970-01-01
          • 1970-01-01
          • 2014-07-24
          • 1970-01-01
          • 2011-04-14
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多