使用java的人估计都知道log4j(我只是听过,虽然appfuse中集成了,但是没有去探究过)
而log4php就是专门给php deug用的。
使用非常方便。
———————-项目地址
———————–
使用的话:
1 建立一个log4php.properties文件,文件内容:
#Bof:—————–适用于0.9beta
log4php.appender.default=LoggerAppenderRollingFile
log4php.appender.default.MaxFileSize=10MB
log4php.appender.default.MaxBackupIndex=5
log4php.appender.default.layout=LoggerPatternLayout
log4php.appender.default.File=./project.log
log4php.appender.default.layout.ConversionPattern="%d %-5p: %m (%F:%L)%n"
//log4php.rootLogger=fatal, default
//log4php.rootLogger=error, default
//log4php.rootLogger=warn, default
//log4php.rootLogger=info, default
log4php.rootLogger=debug, default
#Eof:—————–
如果是0.8beta,可以采用以下
#Bof:0.8—————
log4php.appender.A2=LoggerAppenderRollingFile
log4php.appender.A2.MaxFileSize=10MB
log4php.appender.A2.MaxBackupIndex=5
log4php.appender.A2.layout=LoggerLayoutTTCC
log4php.appender.A2.layout.ContextPrinting="true"
log4php.appender.A2.layout.DateFormat="%c"
log4php.appender.A2.File=./c3crm.log
log4php.rootLogger=fatal, A2
//log4php.rootLogger=error, A2
//log4php.rootLogger=warn, A2
//log4php.rootLogger=info, A2
//log4php.rootLogger=debug, A2
#Eof:0.8—————
2 根据自己的需要在debug页面中加入
require_once(‘log4php/LoggerManager.php’);
$GLOBALS[‘log’] = LoggerManager::getLogger(‘project’);
然后就可以直接使用 $GLOBALS[‘log’]的debug,info,warn,error等方法来debug你的程序。
3 至于察看,可以使用tail -f project.log | grep DEBUG/INFO/WARN等来察看相关的内容。
注意:0.9版本中有个错漏的地方,如果使用以上的properties设置,你会发现文件位置和行数显示的时候为 NA:NA,原因是代码中有错漏,只需要修改
log4php\spi\LoggerLocationInfo.php 189和190行
189 $className = @$hop[‘class’];
190 if ( !empty($className) and ($className == ‘logger’ or get_parent_class($className) == ‘logger’) )
更改为以下:
189 $className = @strtolower($hop[‘class’]);
190 if ( !empty($className) and ($className == ‘logger’ or $className == ‘loggercategory’ or get_parent_class($className) == ‘logger’) or get_parent_class($className) == ‘loggercategory’)
即可显示你所需要的东西,非常方便,非常傻瓜化:)