Schrift
[thread]5792[/thread]

XML als Konfigurationsdatei



<< >> 8 Einträge, 1 Seite
Ronnie
 2003-10-02 15:53
#60115 #60115
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Hallo, ich arbeite an eine kleinen Projekt wobei es darum geht, das auf einem Netzwerklaufwerk Ordner nur noch per CGI angelegt werden sollen. Das Ganze unter Linux mit Samba. Mein CGI ist auch fertig und funktioniert bereits. Ich habe mir nun überlegt das es keinen Spaß macht jedes mal das Skript zu ändern wenn jemand auf die Idee kommt, dass alles anders werden muss. Also würde ich gerne einen universelleren Ansatz verwenden wobei ich die zu erzeugende Ordnerstruktur in einer XML-Datei definieren will.

Beispiel:
Quote
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<BASEFOLDER base='/root/'>
<FOLDER1 name='' chmod='0755' regex='^\w{2}-\d{4}$'>
<FOLDER2 name='' chmod='0755' regex='^\w$'>
<FOLDER name='Schriftverkehr' chmod='0775' />
<FOLDER name='Rechnungen' chmod='0775' />
<FOLDER name='Labordaten' chmod='0775' />
<FOLDER name='Fotos' chmod='0775' />
<FOLDER name='Plaene' chmod='0775' />
</FOLDER2>
</FOLDER1>
</BASEFOLDER>


Wie kann ich nun diese XML Datei in freundliche Variablen zerlegen?

Gruss,
Ronnie
renee
 2003-10-02 17:03
#60116 #60116
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Schau mal unter XML::Simple auf cpan.org...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Ronnie
 2003-10-02 17:16
#60117 #60117
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Danke Renee. So richtig einfach ist da irgendwie nicht:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/perl -w

use strict;
#use Data::Dumper;
use XML::Simple;

my $folder = XMLin('folder.xml');

for (keys(%{$folder->{FOLDER1}})) {
print $folder->{FOLDER1}->{$_}->{chmod},"\n";
}

#print Dumper($folder);


Bei Referenzen auf Hashes von Hashes, bekomme ich schnell Kopfschmerzen. Da muss ich wohl jetzt durch.
format_c
 2003-10-02 17:22
#60118 #60118
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Besser ist es wenn du
Code: (dl )
XMLin('folder.xml',forcearray=>1);

machst um eine gewisse linie hinein zu bekommen.
Wenn du z.B. in einem Ast mehrere gleiche Tags hast nur mit anderen Werten erzeugt XML::Simple ein anonymes Array mit dem Inhalt von anonymen Hashes für jeden Tag.
Wenn in einem anderen Ast nur ein Element drin ist fällt das Array weg. forcearray=>1 zwingt einfach immer zu der Variante mit dem anonymen array.

Aber das mit den Refenzen bekommst du mit Data::Dumper schnell hin und weist dann wie du die Sachen angehen musst. Der Code sieht dann halt recht interessant aus ;)
Damit habe ich ja auch die Linkliste realisiert und habe auch schon meine Erfahrungen mit XML::Simple machen müssen ;)

Gruß Alex
renee
 2003-10-02 17:25
#60119 #60119
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@Ronnie: Auch wenn das relativ kompliziert ist mit XML::Simple, aber echt sinnvoll. Bei der Arbeit habe ich öfter damit zu tun...
Wenn Du nicht mehr durchsteigst, kannst Du ja auch in einem echt tollen Forum fragen ;)
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
format_c
 2003-10-02 17:40
#60120 #60120
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
[quote=renee,02.10.2003, 15:25]...
Wenn Du nicht mehr durchsteigst, kannst Du ja auch in einem echt tollen Forum fragen ;)[/quote]
Du meinst sicher dieses hier ;)
renee
 2003-10-02 17:42
#60121 #60121
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
jepp
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Ronnie
 2003-10-02 19:23
#60122 #60122
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Ich komme solangsam voran. Werde meine Ergebnisse mal am WE hier posten.

Gruss,
Ronnie
<< >> 8 Einträge, 1 Seite



View all threads created 2003-10-02 15:53.