132. 变量调试

输出某个变量是开发过程中经常会用到的调试方法,除了使用php内置的var_dump和print_r之外,ThinkPHP框架内置了一个对浏览器友好的dump方法,用于输出变量的信息到浏览器查看。

用法和PHP内置的var_dump一致:

dump($var1, ...$varN)

使用示例:

$blog = Db::name('blog')->where('id', 3)->find();
$user = User::find();
dump($blog, $user);

如果需要在调试变量输出后中止程序的执行,可以使用halt函数,例如:

$blog = Db::name('blog')->where('id', 3)->find();
$user = User::find();
halt($blog, $user);
echo '这里的信息是看不到的';

执行后会输出同样的结果并中止执行后续的程序。

为了方便查看,某些核心对象由于定义了__debugInfo方法,因此在dump输出的时候属性可能做了简化。

下一节:ThinkPHP提供了Socket日志驱动用于本地和远程调试。