牛骨文教育服务平台(让学习变的简单)

Trace方法

页面Trace只能用于有页面输出的情况,但是trace方法可以用在任何情况,而且trace方法可以用于AJAX等操作。

Trace方法的格式:

trace("变量","标签","级别","是否记录日志")

例如:

$info = "测试信息";
trace($info,"提示");

如果希望把变量调试输出到页面Trace的某个选项卡里面,可以使用:

trace($info,"提示","user");

表示输出到user选项卡,如果没有指定选项卡的话,默认会输出到debug选项卡。 trace方法也可以直接抛出异常,如果是输出到ERR选项卡,并且开启 "TRACE_EXCEPTION"=>true

的话,

trace($info,"错误","ERR");

会抛出异常。 有三种情况下,trace方法会记录日志:

  1. AJAX请求
  2. SHOW_PAGE_TRACE为false,也就是页面Trace关闭的情况下
  3. trace方法的第四个参数为true

在这种情况下,trace方法的第三个参数就表示记录的日志级别,通常包括:

"ERR"  // 一般错误: 一般性错误
"WARN"  // 警告性错误: 需要发出警告的错误
"NOTIC"  // 通知: 程序可以运行但是还不够完美的错误
"INFO"  // 信息: 程序输出信息
"DEBUG"  // 调试: 调试信息
"SQL"  // SQL:SQL语句

断点调试

凭借强大的页面Trace信息功能支持,ThinkPHP可以支持断点调试功能。 我们只需要在不同的位置对某个变量进行trace输出即可,例如:

 $blog = D("Blog");
 $vo = $blog->create();
 trace($vo,"create vo");
 $vo = $blog->find();
 trace($vo,"find vo");