如何将var_dump之后的html代码保存下来
日志中的变量都是用json字符串保存下来的,显示的时候需要格式化一下,我之前是将json变为php变量再dump出来的,这样显示的比较直观再配合xdebug对var_dump的样式美化,看起来已经很舒服了,如下:
这是我之前用bootstrap模态框+xdebug美化过的var_dump写的,直接在html中var_dump就可以了
现在问题来了,我换成了ajax获取数据之后,就不能在代码里直接var_dump了,因为js变量无法直接传递到php脚本中去,于是就有了两种解决办法:
1、写一个接口,将json数据发送给接口,接口处理后返回格式化的html代码,这样就可以直接显示了,但是这样做有一个缺点就是有延迟,跟我之前的的日志显示总是慢那么一点,当然这是脚本处理的时间,于是就有了第二种方法
2、获取数据时直接生成var_dump之后的html代码,然后前台就可以直接显示了,但问题是怎么获取,我试了几次这样的代码:
$html = var_dump($data);
这样的:
$html = export_dump($data);
然后都并没有什么卵用,但是功夫不负有心人,最终我找到了一个简单粗暴的方法:
ob_start(); var_dump(json_decode($json,true)); $str=ob_get_clean();
这样就能获取到var_dump之后的html代码了,是不是很棒
改进之后显示日志格式化的速度明显变快了(废话当然快了,因为html代码早就写好了/斜眼笑)