热搜:NVER 

[] ThinkPHP 集成FIREPHP

2024-04-26 14:03:01
 [] ThinkPHP 集成FIREPHP

[] ThinkPHP 集成FIREPHP 呵呵
   

tp的调试真的很傻很难用,要想输出trace信息,条件如下:1. app_debug 以及show_page_trace设置成true,2. action 必须有视图 才行在这里发挥了自己的想象终于把 firephp 集成进来了,哈哈哈,方法如下:[就是替换 thinkphp/lib/think/core/log.class.php] 类把 firephp.class.php 复制到 thinkphp/lib/think/core 目录中,修改如下方法:[建议将原有文件备份哦,此仅作测试使用]static function record($message,$level=self::err,$record=false) {        if($record || in_array($level,c('log_record_level'))) {            $now = date(self::$format);            self::$log[] =   "{$now} {$level}: {$message}\r\n";        	            switch($level){    			case self::debug:    				firephp::getinstance(true)->trace($message, $level);    				break;    			case self::info:			    				firephp::getinstance(true)->log($message, $level);    				break;    			case self::sql:    				firephp::getinstance(true)->info($message, $level);    				break;    			case self::notice:    			case self::warn:    				firephp::getinstance(true)->warn($message, $level);    				break;    			default:    				firephp::getinstance(true)->error($message, $level);    				break;    		}        }    }对于 sql的输出,因为 thinkphp/lib/think/db/db.class.php 里面第128行 对 调试参数写死了,必须将其 与 c('app_debug') 绑定,很费解,此处修改为 加一个自定义的,不与原有的相冲突..代码如下:if(c('app_debug') || c('log_record_sql'))在配置文件里面做如下选项,即可:'log_record'=>true,  // 进行日志记录'log_record_sql'=>true,  // 进行日志记录'log_record_level' => array('emerg','alert','crit','err','warn','notic','info','debug','sql'),  // 允许记录的日志级别日志级别可以自增减 呵呵