【问题标题】:PHP: convert spaces in string into %20?PHP:将字符串中的空格转换为 %20?
【发布时间】:2011-07-31 04:07:50
【问题描述】:

如何将字符串中的空格转换为%20

这是我的尝试:

$str = "What happens here?";
echo urlencode($str);

输出为"What+happens+here%3F",因此空格不表示为%20

我做错了什么?

【问题讨论】:

    标签: php string urlencode


    【解决方案1】:

    我相信,如果您需要使用%20 变体,您或许可以使用rawurlencode()

    【讨论】:

      【解决方案2】:

      请改用rawurlencode 函数。

      【讨论】:

      • 请注意,如果您将其用于 url(而不是其查询部分),转换后的斜线将导致 url 不起作用。因此,如果您只需要处理空格(可能是那个 URL),我建议您使用 str_replace。
      【解决方案3】:

      加号是 URL 参数中空格字符的历史编码,如 documented in the help 用于 urlencode() 函数。

      同一页面包含您需要的答案 - 使用 rawurlencode() 代替获得 RFC 3986 兼容编码。

      【讨论】:

        猜你喜欢
        • 2017-06-14
        • 1970-01-01
        • 1970-01-01
        • 2020-12-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-03
        相关资源
        最近更新 更多