gpt4 book ai didi

php - 如何在 PHP 中应用 URL 规范化规则?

转载 作者:可可西里 更新时间:2023-10-31 22:49:45 24 4
gpt4 key购买 nike

PHP 中是否有用于 URL 规范化的预先存在的函数或类?

具体来说,遵循此 wikipedia article on URL normalization 中规定的语义保留规范化规则,(或我应该遵循的任何“标准”)。

  • 将方案和主机转换为小写
  • 转义序列中的字母大写
  • 添加尾随/(到目录,而不是文件)
  • 删除默认端口
  • 删除点段

现在,我想我将只使用 parse_url(),并单独应用规则,但我宁愿避免重新发明轮子。

最佳答案

Pear Net_URL2 库看起来至少可以满足您的部分需求。它将删除点段、修复大小写并删除默认端口:

include("Net/URL2.php");
$url = new Net_URL2('HTTP://example.com:80/a/../b/c');
print $url->getNormalizedURL();

发出:

http://example.com/b/c

我怀疑是否存在用于向目录添加尾部斜线的通用机制,因为您需要一种方法将 url 映射到目录,而这很难以通用方式实现。但它很接近。

引用资料:

关于php - 如何在 PHP 中应用 URL 规范化规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4175630/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com