我正在尝试学习如何逃避简单的角色。我打印字符>的ASCII。 但是当我在使用addcslashes函数后打印它时,没有任何东西被转义。那是为什么?
$da=ord('>');
echo $da."<br/>";
$not_escaped="><?";
$escaped = addcslashes($not_escaped, "\61...\64");
echo $escaped;
我跟着他们的文件......但我上面的例子不起作用。 Thye还使用2个分隔符!@在ASCII数字范围之间。它是什么意思?
$escaped = addcslashes($not_escaped, "\0..\37!@\177..\377");
答案 0 :(得分:1)
$charlist
中的ASCII码是八进制,而不是十进制。所以逃避&#34;&gt;&#34; (十进制:62,八进制:76),使用此代码:
$escaped = addcslashes($not_escaped, "\76");
对于范围,请使用两个点而不是三个(&#39; a..z&#39;,而不是&#39; a ... z&#39;)。