[英]How do I control the variable names in Perl's 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
);
print Data::Dumper->Dump( [ \%foo ], [ qw(*foo) ] );
擴展語法需要兩個arrayrefs:一個要轉儲的標量,另一個要使用的名稱。 如果名稱以*為前綴,並且相應的標量是arrayref或hashref,則會生成數組或散列賦值。
除了ysth的答案,你可以使用Ovid的Data :: Dumper :: Names模塊。
use Data::Dumper;
$Data::Dumper::Terse = 1;
print '%foo = '.(Dumper \%foo);
另外, Data :: Dumper :: Simple大致相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.