雷林鹏分享:url中加号引发的错误

时间:2023-03-09 04:27:41
雷林鹏分享:url中加号引发的错误

  刚发现了博客的一个bug,标签页中一些标签带有空格,在url输出中使用了 urlencode 函数进行处理,导致空格被转换成了加号(+),这时通过url访问时会出现错误:

雷林鹏分享:url中加号引发的错误

  临时解决方法是在urlcode输出后,再把加号(+)转换成 %20

  str_replace('+', '%20', urlencode($value['name']))

  至于为什么会出现错误,接着往下看:

  html会把url中的加号等同于空格处理,这样就成了:

  www.php230.com/tags/zoho projects/

  这样tags控制器在获取参数 zoho projects 时就会出错,而把空格转换成 %20 时就快要正常获取参数了

  www.php230.com/tags/zoho%20projects/

  文章转载自 [http://www.php230.com]

(编辑:雷林鹏 来源:网络 侵删)