gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 14:15:37 26 4
gpt4 key购买 nike

所以我用来查看变量内容的方法是在我的模板工具包中使用 Data::Dumper:

[% USE 倾销者 %]
[% Dumper.dump(varname) %]

但我得到的结果有点困惑——关于表关系、列类型和属性等的所有信息。

我想知道是否有办法获得“干净”的变量内容 - 就像正在进行的查询的当前结果+相关的结果集一样(即,当我将 php 与 cakephp 框架一起使用时,有一个“debug(varname)”命令提供了这样的结果,看起来像这样 http://pastebin.com/Hut0LnAb )。

最佳答案

Data::Printer来救援!
它的对象转储更具人类可读性:

my $obj = SomeClass->new;
p($obj);
# produces:
\ SomeClass {
Parents Moose::Object
Linear @ISA SomeClass, Moose::Object
public methods (3) : bar, foo, meta
private methods (0)
internals: {
_something => 42,
}
}

它与模板工具包兼容:
[% USE DataPrinter %]
html-formatted, colored dump of the same data structure:
[% DataPrinter.dump_html( myvar ) %]

它也“知道”如何处理 DBIx::Class:
use Data::Printer
filters => {
-external => [qw[DB]], # use DB filter
}, class => {
expand => 2, # traverse object 2-levels deep
linear_isa => 0, # hide not-so-relevant information
};

...

my $obj = $schema
->resultset('AddressState')
->search({}, { prefetch => [qw[country]] })
->single;
p $obj;

关于perl - 以干净的方式查看变量内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13358962/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com