我希望php代码打开一个文件并在其中搜索一些危险的单词,如
if(preg_match("/(echo|zend|print|print_r|phpinfo|
symlink|ini_set|telnet|cgi|
eval|base64_encode|base64_decode)/iU",$filesource)){
echo 'error';
}
我怎么能成功
答案 0 :(得分:3)
如果要解析PHP代码,请使用token_get_all
获取language tokens数组。
答案 1 :(得分:0)
非常像你概述的那样:)
但是你看过像phpcs和phpcpd这样的工具吗?
您可以像普通文本文件一样打开任何php文件,并在不将其包含在脚本中的情况下解析它。
<?php
$filedata = file_get_contents('/path/to/file.php');
if (preg_match('/foo/', $filedata) {
echo "file contained 'foo'\n";
}