【问题标题】:PHP How to encode all characters with rawurlencodePHP 如何使用 rawurlencode 对所有字符进行编码
【发布时间】:2015-03-22 12:02:04
【问题描述】:

我想知道是否有任何“开箱即用”的 php 函数可以编码字符串中的所有字符而不仅仅是空格。

$str="Encode All Characters Not Only The Spaces In Between";

echo rawurlencode($str);

返回:

Encode%20All%20Characters%20Not%20Only%20The%20Spaces%20In%20Between

但我想编码所有字符串,而不仅仅是空格。

【问题讨论】:

  • 当某些东西不应该被编码而你仍然想对其进行编码时,你必须为此制定自己的编码方案。
  • 没有那个内部的php命令?
  • 仅供参考;为什么要对整个字符串进行编码?

标签: php string utf-8 encode urlencode


【解决方案1】:

没有这种东西,但写起来很容易:

function encode_all($str) {
    $hex = unpack('H*', $str);
    return preg_replace('~..~', '%$0', strtoupper($hex[1]));
}

$str = 'big ƒüßchen';
print_r(encode_all($str));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-28
    相关资源
    最近更新 更多