PHP字符串替换为转义字符


php string replace with escape characters

假设我有两个密码,我可以接收并发送到其他脚本进行处理。

$password1 = "gadg$dfglkj";
$password2 = "adsfasdfasdf";

如果密码中有$,我需要转义$。我如何用str_replace实现这一点?

$password = str_replace("$","'$",$password1);
echo $password;

是行不通的。最后是:

gadgdfglkj //missing $

我也试过"'$",产生相同的结果。

password1变量是一个mysql响应,其中给定帐户的密码包含一个$。我得到密码后需要转义,因为我要将密码传递给另一个登录应用程序。

将文本存储在单引号中而不是双引号中:

$password1 = 'gadg$dfglkj';

在PHP中,单引号将完全接受输入的内容,而不会尝试转换变量。然后,如果您仍然需要添加转义字符,它应该工作。

编辑:为了添加转义字符,请确保str_replace函数的单引号中也包含$字符:

$password = str_replace('$',''$',$password1);
echo $password;