0

FirePHP要求我在每个 .php 页面上添加调试函数调用:

require_once('FirePHPCore/FirePHP.class.php');
ob_start();

这在我的本地机器上不是问题。但是当我的代码在现实世界中工作时,我想删除/禁用它们。

是否有任何“调试模式”变量来禁用它们或删除它们的工具?

4

3 回答 3

5

注意:如果您删除了FirePHP包含调用,但您的代码中仍然有FirePHP日志记录调用,您将收到一个致命错误!

正确的解决方案是禁用FirePHPCore 0.3

$firephp->setEnabled(false);

有关详细信息,请参阅API 参考

您的应用程序/网站中的所有页面/脚本都应该在执行任何其他操作之前调用中央引导文件。上面的代码应该在这个引导文件中,这将允许您在部署时轻松禁用整个应用程序的FirePHP :

bootstrap.php~

ob_start();
require_once('FirePHPCore/FirePHP.class.php');
$firephp = FirePHP::getInstance(true);
// always disable FirePHP first - best practice
$firephp->setEnabled(false);
// only enable if in dev environment - best practice
if ($isDevMode) {
    $firephp->setEnabled(true);
}

仅供参考,如果使用FirePHP 1.0 ,则仅在检测到授权客户端时才会发送日志消息,从而无需上述代码。

于 2011-07-14T18:37:24.860 回答
0

只需定义一个常量

define('IS_PRODUCTION', false);

并在以后使用它:

if (!IS_PRODUCTION) {
    require_once('FirePHPCore/FirePHP.class.php');
    ...
}
于 2011-07-08T04:03:52.237 回答
0

cadorn 的后续行动: 如果在您的框架中 FirePHP 是可选安装(插件、插件、..),最终有人可能会完全禁用或卸载,您可以考虑通过或检查框架核心中 FirePHP 类或函数的可用性,以防 FirePHP遥不可及,定义替代功能。这样,您可以避免致命,并最终给出一些反馈/输出,例如“FirePHP 不可用”..class_exists()function_exists()

于 2012-01-18T12:42:16.910 回答