所以我选择了一份工作,要求我修复另一位程序员编写的破解代码。这是一个混乱,很难读,但真正得到我的是,我需要找到一个特定的功能,埋在数百个PHP文件的某个地方。
如果您获得了功能名称,请说<?php print mystery_function(); ?>
,那么如何跟踪此功能呢?
除了使用ftping整个站点并让windows搜索每个文件(我将要做的)的粗暴方法之外,有没有办法向该函数发送值并产生可追踪的错误?
答案 0 :(得分:17)
$reflection = new ReflectionFunction('mystery_function');
echo $reflection->getFileName();
答案 1 :(得分:2)
如果您使用的是Windows,则可以使用wingrep来帮助您快速搜索文件。至于PHP本身的解决方案,我不确定。
答案 2 :(得分:1)
我在整个网站“ftping”中看到没有“粗暴”,在本地存储然后为任何子字符串运行grep,
甚至只是在现场使用SSH和grep。
这让你可以找到任何子串,例如html片段,文件名等,而不仅仅是函数名。
不要把粗暴地称为千千万万程序员使用的通用方法,你粗暴地说;)