php的转义字符串

今天碰到一个处理文件特殊字符的事情,再次注意到这个问题,在php中:

* 以单引号为定界符的php字符串,支持两个转义”和/*
以双引号为定界符的php字符串,支持下列转义: n 换行) r 回车) t
水平制表符) / 反斜线 $ 美元符号 双引号 [0-7]澳门新葡亰3522平台游戏,{1,3}
此正则表达式序列匹配一个用八进制符号表示的字符 x[0-9A-Fa-f]{1,2}
此正则表达式序列匹配一个用十六进制符号表示的字符

举几个例子:

一个包含特殊字符的例子:

$str =
ffffffff;echo(strlen($str));echo(n);for($i=0;$istrlen($str);$i++)echo(t.ord($str{$i}));echo(n);

输出结果:———————-

9 102 102 102 102 0 102 102 102 102

替换特殊字符的例子

$str = ffffffff;$str = str_replace(x0, , $str); //或者用$str =
str_replace(, , $str); //或者用$str = str_replace(chr(0), , $str);
echo(strlen($str));echo(n);for($i=0;$istrlen($str);$i++)echo(t.ord($str{$i}));echo(n);输出结果:———————-8
102 102 102 102 102 102 102 102

八进制ascii码例子:

//注意,符合正则[0-7]{1,3}的字符串,表示一个八进制的ascii码。$str =
1237101188; //这里的8不符合要求,被修正为/8
echo(strlen($str));echo(n);for($i=0;$istrlen($str);$i++)echo(t.ord($str{$i}