1、可以在config.php中进行设置,默认为关闭状态。 'APP_DEBUG' => true
打开\ThinkPHP\Common\debug.php文件可以查看debug的默认设置如下:
return array(
'LOG_RECORD'=>true, // 进行日志记录
'LOG_RECORD_LEVEL' => array('EMERG','ALERT','CRIT','ERR','WARN','NOTIC','INFO','DEBUG','SQL'), // 允许记录的日志级别
'DB_FIELDS_CACHE'=>false, //数据库字段缓存
'SHOW_RUN_TIME'=>true, // 运行时间显示
'SHOW_ADV_TIME'=>true, // 显示详细的运行时间
'SHOW_DB_TIMES'=>true, // 显示数据库查询和写入次数
'SHOW_CACHE_TIMES'=>true, // 显示缓存 *** 作次数
'SHOW_USE_MEM'=>true, // 显示内存开销
'SHOW_PAGE_TRACE'=>true,// 显示页面Trace信息 由Trace文件定义和Action *** 作赋值
'APP_FILE_CASE' => true, // 是否检查文件的大小写 对Windows平台有效
)
注意事项:DB_FIELDS_CACHE数据库字段缓存默认关闭状态,如果开启的话,会在Runtime\Data文件夹下生成文件缓存,并且修改表之后,如新加了字段,这个缓存无法记录你的 *** 作,需要我们手动删除一次,对表的修改才会成功。
将'APP_DEBUG' => true后,访问页面会出现如下图的DEBUG提示:
如果只想显示一部分提示信息,如运行时间,内存开销等,
可以在config.php中进行相应的设置即可,如:
//'APP_DEBUG' => true, // 调试模式开关
'SHOW_RUN_TIME' => true, //运行时间显示
'SHOW_ADV_TIME' => true, //显示详细的运行时间
'SHOW_DB_TIMES' => true, //显示数据库的 *** 作次数
'SHOW_CACHE_TIMES'=>true, //显示缓存 *** 作次数
'SHOW_USE_MEM' => true, //显示内存开销
提示信息如下图:
2、页面Trace信息的自定义:\ThinkPHP\Tpl\PageTrace.tpl.php
自定义的方法一:在config.php的同级目录加上一个trace.php文件
<?php
return array{
'当前的server信息'=>$_SERVER['REMOTE_ADDR'],
}
?>
自定义的方法二:在Action方法中添加
$this->trace('我很丑,但是我很温柔','5211314')
3、输出调试法:
halt('aaaaaaa')//输出aaaaaa并且中断程序执行
4、模型调试:显示SQL语句
$User=new Model('User')
$User->find(1)
echo $User->getLastSql()//输出最后执行的一条SQL语句
5、日志记录\ThinkPHP\Lib\Think\Core\Log.class.php
config.php中设置
'LOG_RECORD'=>true,//开启了日志记录
'LOG_RECORD_LEVEL'=>array('EMERG','ALERT'
'log' =>[// 日志记录方式,内置 file socket 支持扩展
'type' =>'File',
// 日志保存目录
'path' =>LOG_PATH,
// 日志记录级别
'level' =>[],//log 常规日志,用于记录日志error 错误,一般会导致程序的终止notice 警告,程序可以运行但是还不够完美的错误
// error和sql日志单独记录
'apart_level' =>['error','sql'],
//单个日志文件的大小限制,超过后会自动记录到第二个文件
'file_size' =>2097152,
//日志的时间格式,默认是` c `
'time_format' =>'c'
]
onethink里有这个功能,记录 *** 作日志的,可以参考一下,需要先把所有需要记录的行为添加一下,这个工作量巨大,如果每个行为都要记录的话···所以一般都是把重要的记录就可以了。onethink
是
thinkphp开发的
可能跟你的存在版本差异,原理都是一样的,稍微修改就能用
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)