加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

使用Data :: Dumper进行Perl持久数据存储

发布时间:2020-12-16 06:07:35 所属栏目:大数据 来源:网络整理
导读:我一直试图想出这个问题,直到今晚.我已经用Google搜索了它,并没有任何示例或我的黑客实例完成它.看起来这应该很简单,但我无法得到它.这是代码: #!/usr/bin/perl -wuse strict;use Data::Dumper;my $complex_variable = {};my $MEMORY = "$ENV{HOME}/data/me
我一直试图想出这个问题,直到今晚.我已经用Google搜索了它,并没有任何示例或我的黑客实例完成它.看起来这应该很简单,但我无法得到它.这是代码:

#!/usr/bin/perl -w
use strict;
use Data::Dumper;

my $complex_variable = {};
my $MEMORY = "$ENV{HOME}/data/memory-file";

$complex_variable->{ 'key' } = 'value';
$complex_variable->{ 'key1' } = 'value1';
$complex_variable->{ 'key2' } = 'value2';
$complex_variable->{ 'key3' } = 'value3';

print Dumper($complex_variable)."TEST001n";

open M,">$MEMORY" or die;
print M Data::Dumper->Dump([$complex_variable],['$complex_variable']);
close M;

$complex_variable = {};
print Dumper($complex_variable)."TEST002n";

# Then later to restore the value,it's simply:
do $MEMORY;
#eval $MEMORY;

print Dumper($complex_variable)."TEST003n";

这是我的输出:

$VAR1 = {
         'key2' => 'value2','key1' => 'value1','key3' => 'value3','key' => 'value'
       };
TEST001
$VAR1 = {};
TEST002
$VAR1 = {};
TEST003

我读到的所有内容都表明TEST003输出看起来与TEST001输出相同,这正是我想要实现的.

我在这里错过了什么?我应该“做”不同的做法,还是应该“反对”,如果是这样的话?

谢谢你的帮助…

解决方法

我们都有那些晚上!尝试:

$complex_variable = do $MEMORY || die "Bad data";

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读