Şu anda bir çok çevre Perl developping ediyorum. Hepinizin bildiği gibi, çevre konfigürasyonu hokkabazlığı kötü bir şekilde yapıldığında oldukça acı verici olabilir. YaniParametreleri Perl modülü yüklemesine geçirmek mümkün mü?
package Cfg;
use strict;
use warnings;
my $gEnvironment = "DEBUG";#"PRODUCTION";
my %gConfig = (
DEBUG=>{MESSAGE=>"This is a dbg env.",URL=>"www.my-dbg-url.org"},
PRODUCTION=>{MESSAGE=>"This is a prod env.",URL=>"www.shinyprodurl.org"}
);
my $gMessage = defined $gConfig{$gEnvironment} ?
$gConfig{$gEnvironment}{MESSAGE} : die "Crappy environment";
sub Message { $gMessage = shift(@_) if (@_); $gMessage }
sub Url {
defined $gConfig{$gEnvironment} ?
$gConfig{$gEnvironment}{URL} : die "Crappy environment"
}
1;
aşağıdaki komut:
use strict;
use warnings;
use Cfg;
print Cfg::Message,"\n";
Cfg::Message("I'm a surcharged message.");
print Cfg::Message;
sonraki çıkış üretmek misiniz benim perl komut bir yapılandırma değeri aşırı yük amaç bazı komut satırı parametreleri izin vermelidir gibi, ben şu çözümü ile geldi:
Buradaki nokta, Cfg modülünün yüklenmesi sırasında $ gEnvironment değerini tanımlamak istiyorum. Bu Benim bütün ortamlarda aynı yapılandırma modülü kullanmak için izin verecek.
Bu mümkün mü?