我用"urlencoded"字符串"%2B"替换"+"符号时遇到了一些麻烦.我怎样才能做到这一点?
这就是我尝试过的:
文本输入文本框:
plus(+)
Run Code Online (Sandbox Code Playgroud)
然后我urlencode字符串:
$string = urlencode($string);
Run Code Online (Sandbox Code Playgroud)
字符串现在看起来像:
plus%28+%29
Run Code Online (Sandbox Code Playgroud)
我想要"+"urlencoded,否则当我在urldecode()中显示要在浏览器中显示的数据时,我最终得到:
plus( )
Run Code Online (Sandbox Code Playgroud)
因为urldecode()将"+"解释为空格.
我尝试使用php的str_replace(),但我一直得到一个"NULL"作为"$ new_string"的值返回:
$new_string = str_replace('+', '%2B', $string);
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
提前致谢!
Joh*_*ica 43
这很奇怪.当我使用时urlencode,plus(+)我得到plus%28%2B%29.确保你正确使用它.
你也可以试试rawurlencode.它将编码空格%20而不是+.