用于修改散列引用数组中的值的简写

Wei*_*yan 0 arrays perl hash

我有一个哈希引用数组.散列中的日期字段存储在纪元中.在返回数组之前,我必须将其格式化为人类可读.以下是我的代码:

for my $post (@sorted) {
        $post->{date} = format_time($post->{date});
        push @formatted, $post;
}
Run Code Online (Sandbox Code Playgroud)

我试过了

my @formatted =  map {$_{date} = format_time($_{date})} @sorted;
Run Code Online (Sandbox Code Playgroud)

除{日期}之外的所有字段都将被删除.

有更聪明的方法吗?

谢谢

tad*_*dmc 5

$_->{date} = format_time($_->{date}) for @sorted.
Run Code Online (Sandbox Code Playgroud)

然后@sorted中的日期将被转换.