FirePHP 是Firefox 的扩充套件,但它可以帮你debug 后端PHP 的程式,听起来很神奇是吧?其实用的技术 跟某些IDE 一样,要求你在写程式时加入一些追踪用的代码 。通过使用Firephp你可以在Firebug的Console栏中看到要调试的数据 ,而不影响php程序 的正常执行,所以说,这东西对于Ajax开发 是很有帮助的!
在firefox中选 工具->获取 组件-〉获取附件组件,然后搜索firephp 安装后重新启动 。此外还需要firefox的JavaScript调试插件 firebug。
Zend framework 1.6 内置了 firephp,也就是说你不必再安装其他的类就可以利用firebug的console输出调试信息。要使用这一功能 ,首先要firefox要安装firephp和firebug扩展,同时firebug必须启用net
我们来修改 zf项目 的入口文件 index.php,增加如下代码:
$logger = new Zend_Log( ) ;
$writer = new Zend_Log_Writer_Firebug( ) ;
$logger -> addWriter ( $writer ) ;
Zend_Registry:: set ( 'logger', $logger ) ;
我们生成了一个logger并注册为全局变量 。
接着,我们可以在任何需要调试的地方增加,可以放在controller,model,view等等任何地方。
$logger = Zend_Registry:: get ( 'logger') ;
$logger -> log ( 'This is a log message!', Zend_Log:: INFO ) ;
此处我们可以将'This is a log message!‘换成我们程序中的任何php变量
这是,打开firefox启用firebug ,访问刚才修改的应用,我们呢就可以看到在firebug的console输出了
This is a log mesage!
调试起来,php的调试工作简单多了,通过firebug console输出,你可以看到整个页面 生成的状态,甚至直观感觉那条语句 ,哪部分执行的更慢。
$logger->log('This is a log message!', Zend_Log::INFO);
这句有更简单的写法
$logger->info($array);
如logger->err($array);