如何控制 Perl 的 Data::Dumper 中的变量名称?
我有这个简单的 Perl 脚本:
#! /usr/bin/perl -w
use strict;
use Data::Dumper;
my %foo = ( 'abc' => 1 );
print Dumper(\%foo);
它输出:
$VAR1 = {
'abc' => 1
};
我如何让它输出这个?
%foo = (
'abc' => 1
);
I've got this simple Perl script:
#! /usr/bin/perl -w
use strict;
use Data::Dumper;
my %foo = ( 'abc' => 1 );
print Dumper(\%foo);
It outputs:
$VAR1 = {
'abc' => 1
};
How do I make it output this instead?
%foo = (
'abc' => 1
);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
扩展语法需要两个数组引用:一个要转储的标量,一个要使用的名称。 如果名称以 * 为前缀,并且相应的标量是 arrayref 或 hashref,则会生成数组或哈希赋值。
The extended syntax takes two arrayrefs: one of scalars to dump, and one of names to use. If the name is prefixed by * and the corresponding scalar is an arrayref or hashref, an array or hash assignment is produced.
除了ysth的答案之外,您还可以使用Ovid的 Data::Dumper::Names 模块。
In addition to ysth's answer, you can use Ovid's Data::Dumper::Names module.
另外, Data::Dumper::Simple< /a> 大致就是这样。
Also, Data::Dumper::Simple does roughly that.