如何找到设置了php var或constant的位置?

时间:2011-05-28 21:38:48

标签: php

我正在研究的这个php脚本有一百万个包含,而我正试图找到定义常量TEXT_PRODUCT的位置(文件名和行号是多少)?

2 个答案:

答案 0 :(得分:9)

如果要检查一次定义的位置,请在脚本开头定义TEXT_PRODUCT。因此,每当PHP脚本尝试在任何文件中再次定义它时,它将给出之前定义的通知级别错误。 但是您必须定义自己的错误处理程序以获取确切的行号和文件

     <?php

     function customeHandler($errno, $errstr, $errfile, $errline){
         echo "<b>My NOTICE</b> [$errno] $errstr<br />\n";
         echo "At line ", $errline , "<br />";
         echo "At file ", $errfile , "<br />";;
             return true;
      }

      $old_error_handler = set_error_handler("customeHandler");

      define("TEST",3);

因此,无论何时,我们再次在任何文件中定义相同的变量,它将在屏幕上显示通知级别错误,您可以获取文件名以及行号。用这个。

答案 1 :(得分:3)

grep -r 'define("TEXT_PRODUCT"' *