php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.07.2008, 14:53  
Erfahrener Benutzer
 
Registriert seit: 27.08.2003
Beiträge: 449
PHP-Kenntnisse:
Fortgeschritten
GSJLink
Standard Welche Methode um Config Files editierbar zu machen?

Hallo,

ich bin gerade dabei eine meiner Webanwendungen zu erweitern und bin jetzt auf ein kleines Problem gestoßen. Und zwar die Config Files. Normalerweise sollen diese nur wichtige Informationen wie Datenbankzugangsdaten, Document Roots und Lizenzen enthalten. Wie stelle ich das ganze jetzt aber an, wenn ich die Configs im Zuge einer Installations- oder Updateroutine bearbeiten möchte?

Normal sehen Config Files bei mir etwa so aus:

PHP-Code:
 
$config_var 
= array();
$config_var['name'] = "value";
// ...
?> 
Um das ganze editierbar zu machen, könnte ich natürlich einfach PHP Code in die Datei schreiben. Eine Alternative wäre z.B. eine XML basierende Configdatei, die über SimpleXML gelesen und gefüttert werden kann. Aber wie sieht das ganze hier performancetechnisch aus? Die XML Datei wäre dann übrigends via .htaccess von einem Zugriff von außen geschützt.

Die Config wird übrigends bei jedem Aufruf auslesen (kein Speichern in einer Session) und sollte möglichst auch weiterhin so ausgelesen werden.

Kennt ihr vll. noch andere Alternativen, wie man das Problem angehen könnte? Welche Methode benutzt ihr für eure Projekte?


mfg
Link
__________________
"Ein Script ist nur dann gut, wenn es unabhängig von der verwendeten Plattform funktioniert"
GSJLink ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.07.2008, 15:11  
¯\_(ツ)_/¯
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.814
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

INI Files kannst du nutzen. Manual: parse_ini_file()
__________________
▇█▓▒░◕‿‿◕░▒▓█▇
Flor1an ist offline   Mit Zitat antworten
Alt 23.07.2008, 05:03  
Erfahrener Benutzer
 
Benutzerbild von GelaMu
 
Registriert seit: 05.03.2006
Beiträge: 183
GelaMu
Standard

Ich persönlich benutze INI-Dateien oder einfach PHP-Dateien, die ein Array zurückgeben.
Um die Einstellungen zu exportieren reicht schon ein file_put_contents($file, "<?php return ".var_export($config, true)."; ?>");
Ich habe da z.B. sowas wie eine MiniCMS, die für solche Konfigurationen gebaut ist. Da gibt man einfach Regel für eine Konfiguration vor, an die sich dann die CMS halten muss, so in der Art:

PHP-Code:
return array(
   
"*ASSOC*" => true,
   
"name" => array(
      
"type" => "string",
      
"minlen" => 3,
      
"maxlen" => 24,
      
"desc" => "Name",
      
"comment" => "Geben Sie hier Ihren Namen ein"
   
),
   
"pass" => array(
      
"type" => "string",
      
"minlen" => 8,
      
"maxlen" => 32,
      
"desc" => "Passwort",
      
"comment" => "Geben Sie hier Ihr Passwort ein"
   
),
   
"user_id" => array(
      
"type" => "integer",
      
"min" => 1,
      
"max" => 99,
      
"desc" => "Ihre User-ID",
      
"Geben Sie hier Ihre User-ID ein"
   
)
);

?> 

Statt den beiden Typen "string" und "integer" gibt es noch weiter, wie "array". Man kann auch neue Typen hinzufügen, in dem man eine gleichnamige Datei mit den Funktionen erstellt.

Tschuldigt, Freunde, wenn ich etwas vom Thema abgewichen bin.
Wenn du sowas brauchst, GSJLink, einfach bescheid sagen (vielleicht per PM). Ich kann's dir gerne zuschicken.

Grüße,
GelaMu
GelaMu ist offline   Mit Zitat antworten
Alt 23.07.2008, 10:26  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Eine weitere Möglichketi ist das ganze als JSON zu speichern.
Lässt sich einfach auslesen ($conf = json_decode(file_get_contents('config.json'))
und eben so leicht bearbeiten und wieder zurückschreiben (file_put_contents('config.json', json_encode($conf))
__________________
Today you...Tomorrow me.
agrajag ist offline   Mit Zitat antworten
Alt 23.07.2008, 11:39  
Erfahrener Benutzer
 
Registriert seit: 27.08.2003
Beiträge: 449
PHP-Kenntnisse:
Fortgeschritten
GSJLink
Standard

Zitat:
Zitat von RaZoR
INI Files kannst du nutzen. Manual: parse_ini_file()
Gute Funktion, die kannte ich vorher noch nicht. Die wäre natürlich auch eine gute Möglichkeit, allerdings müsste ich mir dann zum INI File schreiben ne kleine Funktion schreiben. Sollte aber kein Problem sein

Die Funktion var_export() habe ich auch noch nicht gekannt, ist aber hinsichtlich der Problematik sehr hilfreich, da ich die Config weiterhin als normalen Array abspeichern kann und leicht auslesen kann.

Zitat:
Zitat von Agrajag
Eine weitere Möglichketi ist das ganze als JSON zu speichern.
Lässt sich einfach auslesen ($conf = json_decode(file_get_contents('config.json'))
und eben so leicht bearbeiten und wieder zurückschreiben (file_put_contents('config.json', json_encode($conf))
Dass es JSON für PHP habe ich mir fast gedacht, dass PHP aber so vorteilhafte Funktionen für die Technik bereitstellt habe ich auch noch nicht gewusst.

Ich werde heute Nachmittag mal eure Lösungen ausprobieren und entscheiden, welche für mich die Beste ist.

Vielen Dank!


mfg
Link
__________________
"Ein Script ist nur dann gut, wenn es unabhängig von der verwendeten Plattform funktioniert"
GSJLink ist offline   Mit Zitat antworten
Alt 25.07.2008, 01:01  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

json hat einen mE entscheidenden Vorteil gegenüber yaml. Es hat eine direkte, natürliche Entsprechung im Browser. Und mit dem kommunizieren die meisten php Skripte (noch?). Ansonsten sind beides gute Alternativen zur Breitband-Keule xml.
David ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] OOP mit PHP 5, Methode kann nicht innerhalb der class ausgeführt werden dudi PHP Tipps 2008 6 04.07.2008 00:02
Ermitteln ob Methode geerbt wurde oder nicht? MaMo-Net PHP Tipps 2007 23 14.04.2007 00:28
Methode als gz_handler? Andreas PHP-Fortgeschrittene 5 11.04.2006 14:14
problem mit einer methode in einer klasse PHP Tipps 2007 4 18.12.2005 16:14
[Erledigt] Rekursive Methode PHP-Fortgeschrittene 7 02.06.2005 15:09
PHP5: Klassenattribut für statische Methode, mit Vererbung PHP-Fortgeschrittene 9 24.05.2005 09:35
Download Files bzw. Upload files !! PHP Tipps 2005 2 29.03.2005 20:20
[Erledigt] warum kann nicht SVG files laden? PHP Tipps 2005 16 09.03.2005 14:05
Methode aus einer anderen Methode aufrufen PHP Tipps 2005 3 02.03.2005 10:07
Files zippen mit ftp_exec()?! - Hilfe PHP-Fortgeschrittene 0 24.01.2005 10:39
MYSQL Config Table auslesen? Klappt nicht.. Datenbanken 4 06.01.2005 16:24
Methode kapseln PHP Tipps 2004 2 12.10.2004 10:53
Beste methode: zip und rar download? PHP Tipps 2004 7 19.09.2004 22:21
[Erledigt] .php5 files Server, Hosting und Workstations 11 31.08.2004 19:29
number of open files to more than 150 Datenbanken 0 22.07.2004 11:41

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php json configfile, php config schreiben, config speichern php, php script .conf auslesen und bearbeiten, php datei schreiben json add, config ini files schreiben, php config file schreiben, php script config bearbeiten, php einstellungen in .inc.php speichern, php config speichern, php config file file_put_contents, config php schreiben, php simplexmlelement config file, coda configure.php speichern, php konfigurationsdatei auslesen, php methode config auslesen, php in config speichern, php string problematik config datei editor, php in config schreiben, array in php in eine config file schreiben

Alle Zeitangaben in WEZ +1. Es ist jetzt 22:11 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.