我有一个变量,我通过 url 作为 jSON
字符串传递,其中一部分是以下字符串:
signature=8W2sp\/J+kC6fh8a88jabNPuA8048sShDnXNOo1jSQ=
当我读取 url 并使用 php 中的 parse_str()
函数解析字符串时,+
符号被空格替换。有没有办法禁止用空格替换 +
。
最佳答案
作为parse_str自动应用 url_decode对于给定的字符串,加号被解码为空格字符。
要保留加号,请将 +
替换为其编码对应的 %2B
。
$array = [];
$input = "signature=8W2sp\/J+kC6fh8a88jabNPuA8048sShDnXNOo1jSQ=";
parse_str(str_replace('+', '%2B', $input), $array);
var_dump($array['signature']);
关于PHP parse_str 函数用空格替换+号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31094261/