我有这个编码的字符串
hhNa0fUcOc3k0jUhPcRBJshpiXLpUSug + NhgPk89O7eSjerHk6go360U9rl8LazZo6DR6M1N4IqG0PYIwPyKhQ ==
我使用preg_replace()
将所有+,/,= on
字符串替换为$
,但结果与上面相同,编码后的字符串未被很好地解析。基本上我想只是为了某些安全目的而更改该字符串中的所有+=/
个字符。这是我做的,以下是我的代码片段:
echo $code.'<br/>';
echo preg_replace('/\+\=\//', '$', $code);
其中$code
之前给出的那个。我似乎无法找到问题,为什么它不能用我想要的那个替换指定的字符。
答案 0 :(得分:2)
您需要将3个字符放在交替(|
)组中。
preg_replace('/\+|\=|\\//', '$', $code);
→ string(88) "hhNa0fUcOc3k0jUhPcRBJshpiXLpUSug$NhgPk89O7eSjerHk6go360U9rl8LazZo6DR6M1N4IqG0PYIwPyKhQ$$"
您当前的代码将与序列+=/
匹配,而不是单独匹配字符。