控制台调试

Biny的一大特色既是这控制台调试方式,用户可以调试自己想要的数据,同时也不会对当前的页面结构产生影响。

调试的开关在/web/index.php

  1. // console调试开关,关闭后控制台不会输出内容
  2. defined('SYS_CONSOLE') or define('SYS_CONSOLE', true);

控制台调试的方式,同步异步都可以调试,但异步的调试是需要引用/static/js/main.js文件,这样异步ajax的请求也会把调试信息输出在控制台里了。

调试方式很简单,全局可以调用Logger::info($message, $key),另外还有warn,error,log等

第一个参数为想要调试的内容,同时也支持数组,Object类的输出。第二个参数为调试key,不传默认为phpLogs

Logger::info()消息 输出

Logger::warn()警告 输出

Logger::error()异常 输出

Logger::log()日志 输出

下面是一个简单例子,和控制台的输出结果。结果会因为浏览器不一样而样式不同,效果上是一样的。

  1. // 以下代码全局都可以使用
  2. Logger::log(array('cc'=>'dd'));
  3. Logger::error('this is a error');
  4. Logger::info(array(1,2,3,4,5));
  5. Logger::warn("ss", "warnKey");

控制台调试 - 图1

另外Logger调试类中还支持time,memory的输出,可以使用其对代码性能做优化。

  1. // 开始结尾处加上时间 和 memory 就可以获取中间程序消耗的性能了
  2. Logger::time('start-time');
  3. Logger::memory('start-memory');
  4. Logger::log('do something');
  5. Logger::time('end-time');
  6. Logger::memory('end-memory');

控制台调试 - 图2