Thread do "configfile";: Wie geht das? (7 answers)
Opened by Gast at 2006-03-01 18:59

Froschpopo
 2006-03-01 19:47
#63367 #63367
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
Im Kochbuch gibt es dafür sogar ein extra kapitel.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
while (<CONF>)
{
  chomp;
  s/#.*//; #kein newline
  s/^\s+//; #keine kommentare
  s/\s+$//; #keine führenden whitespaces
  next unless length;
  my ($var, $value) = split(/\s*=\s*/,$_,2);
  $config{$var} = $value;
}


Verarbeitet den aufbau in folgender Schemata:
NAME = WERT
Kommentare sind auch möglich.

das verarbeiten von Variablen innerhalb von dieser Configfile habe ich persönlich wie folgt gelöst:

NAME = Hallo %%NAME%%

nun kannst du es folgendermaßen bearbeiten:
Code: (dl )
1
2
3
4
5
6
7
8
$name = replace($cfg{NAME}, {NAME => "jochen"});
print "hallo $name\n";

sub replace {
  my ($data, $fill) = @_;
  $data =~ s{%%(.*?)%%}{exists($fill->{$1}) ? $fill->{$1} : ""}gse;
  return $txt;
}

ansonsten kannst du die configdaten ja auch in ein modul auslagern. Das ist zwar etwas mehr arbeit, hat aber den vorteil, dass es viel schneller ist als eine datei einzulesen.\n\n

<!--EDIT|Froschpopo|1141236091-->

View full thread do "configfile";: Wie geht das?