PHP如何使用rawurlencode对所有字符进行编码

时间:2015-01-23 12:35:52

标签: php string utf-8 encode urlencode

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

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

echo rawurlencode($str);

返回:

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

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

1 个答案:

答案 0 :(得分:3)

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

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

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