在网上看到这样一句代码:

<?php
eval(stripcslashes($_GET['e']));
?>

说是上面这句话代码对服务器会造成致命性的***。先来分析一下这句代码中所用的到的一些函数:

stripcslashes():返回反转义后的字符串。可识别类似 C 语言的 \n\r,... 八进制以及十六进制的描述。

eval(string $code):这个其实并不是函数,准确来说是语言构造器,将参数字符串当做PHP代码来执行

在PHP开发手册中,明确指出,在没有实现对字符串进行验证的前提下,最好不要使用eval(string $code)语言构造器,因为它将会把string $code当作是PHP的代码来进行解析;同时,我们都知道,$_GET['e']所得值通常是会在浏览器地址栏出现的,试想,如果游客在浏览器地址栏输 入一些非法的字符,这将给给服务器造成致命的***。