我正在搜索列表中的所有可能的PHP错误消息。这次谷歌无法帮助我。
示例:
Fatal error: Call to undefined function ... in ... on line ...
Warning: require_once(...) [function.require-once]: failed to open stream: No such file or directory in ... on line ...
Warning: Illegal offset type in ... on line ...
以及更多这样的错误...
根据php.net http://php.net/manual/en/tokens.php PHP正在使用令牌生成错误消息。但我仍然不明白如何使用它们来生成错误消息,如
Fatal error: Call to undefined function T_SOME_TOKEN in T_SOME_TOKEN on line 666
我应该在哪里搜索这样的错误生成器?我假设它隐藏在PHP的源代码中,但我不知道从哪里开始。
目的是构建一个PHP错误解析器,它将监视服务器错误消息(如果已启用)并检查PHP脚本更新:
Script "foo.php" which returns multiple errors
Scan 1 (time t1):
PHP Error on line 1000
PHP Error on line 1200
Scan 2 (time t2):
PHP Error on line 1010
PHP Error on line 1210
1010 - 1000 =添加了10行代码(位于第0行和第1010行之间)。通过使用这种方法以及修复哪个错误的知识,可以在给定的PHP脚本(如果有的话)中进行"基于PHP错误的黑盒逆向工程" 在这样的脚本中有足够的其他可重现的PHP错误)(例如有缺陷的游戏引擎)。