perl – 以干净的方式查看变量内容

前端之家收集整理的这篇文章主要介绍了perl – 以干净的方式查看变量内容前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我用来查看变量内容方法是在我的模板工具包中使用Data :: Dumper:
  1. [% USE Dumper %]
  2. [% Dumper.dump(varname) %]

但是我得到的结果有点乱 – 关于表关系,列类型和attrbitues等的所有信息.

我想知道是否有办法获得一个’干净的’变量内容 – 因为只有查询的当前结果是相关的结果集(即当我使用带有cakePHP框架的PHP时,有一个’debug(varname)’命令提供了这样的结果,看起来像这个http://pastebin.com/Hut0LnAb).

解决方法

Data::Printer来救援!
它的对象转储更易于人类阅读:
  1. my $obj = SomeClass->new;
  2. p($obj);
  3. # produces:
  4. \ SomeClass {
  5. Parents Moose::Object
  6. Linear @ISA SomeClass,Moose::Object
  7. public methods (3) : bar,foo,Meta
  8. private methods (0)
  9. internals: {
  10. _something => 42,}
  11. }

它与Template Toolkit兼容:

  1. [% USE DataPrinter %]
  2. html-formatted,colored dump of the same data structure:
  3. [% DataPrinter.dump_html( myvar ) %]

它“知道”如何处理DBIx :: Class:

  1. use Data::Printer
  2. filters => {
  3. -external => [qw[DB]],# use DB filter
  4. },class => {
  5. expand => 2,# traverse object 2-levels deep
  6. linear_isa => 0,# hide not-so-relevant information
  7. };
  8.  
  9. ...
  10.  
  11. my $obj = $schema
  12. ->resultset('AddressState')
  13. ->search({},{ prefetch => [qw[country]] })
  14. ->single;
  15. p $obj;

猜你在找的Perl相关文章