declaring a hash table in one file and using it in another in Perl

后端 未结 4 1181
梦如初夏
梦如初夏 2020-12-11 10:01

I need to create a hash table in one file and use in in another. The reason for it is that that the table is my \"database\" and will be changed, and I want it to seat with

4条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-11 10:30

    This is likely not be the best solution, but you could just use Storable or Data::Dumper, both of which are in the core since forever (5.7.3 and 5.5, respectively).

    Alternatively, you could put them in another module and use/require that, ala

    package MyImportantHash;
    

    use Exporter;

    our @EXPORT = qw( %important_hash );
    
    our %important_hash = (
                  some_key  => 'some_value',
             );
    
    1;
    

    And in your main package,

    use MyImportantHash;
    say "$_ => $important_hash{$_}" for sort keys %important_hash;
    

    Of course, this all assumes that you don't want changes in the hash while in-memory to automatically show up in the file. If you do, look no further than davorg's answer.

提交回复
热议问题