Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Chapter 9. Konfigurationsdateien

Konfigurationsdateien sind ein praktischer Weg um Template-Variablen aus einer gemeinsamen Datei zu lesen. Ein Beispiel sind die Template-Farben. Wenn Sie die Farben einer Applikation anpassen wollen, müssen Sie normalerweise alle Templates durcharbeiten, und die entsprechenden Werte ändern. Mit einer Konfigurationsdatei können Sie alle Definitionen in einer einzigen Datei vornehmen, und somit auch einfach ändern.

Example 9.1. Beispiel der Konfigurationsdatei-Syntax


# global variables
pageTitle = "Main Menu"
bodyBgColor = #000000
tableBgColor = #000000
rowBgColor = #00ff00

[Customer]
pageTitle = "Customer Info"

[Login]
pageTitle = "Login"
focus = "username"
Intro = """Diese Zeile erstreckt sich über
		mehrere Zeilen, und muss deswegen
			mit dreifachen Anführungszeichen
				umschlossen werden."""

# hidden section
[.Database]
host=my.example.com
db=ADDRESSBOOK
user=php-user
pass=foobar

Die Werte in einer Konfigurationsdatei können in einfachen/doppelten Anführungszeichen notiert werden. Falls Sie einen Wert haben der sich über mehrere Zeilen ausbreitet muss dieser Wert in dreifachen Anführungszeichen (""") eingebettet werden. Die Kommentar-Syntax kann frei gewählt werden, solange sie nicht der normalen Syntax entsprechen. Wir empfehlen die Verwendung von # (Raute) am Anfang jeder Kommentar-Zeile.

Dieses Beispiel hat 2 'sections'. 'section'-Namen werden von []-Zeichen umschlossen und können alle Zeichen ausser [ und ] enthalten. Die vier Variablen welche am Anfang der Datei definiert werden sind globale Variablen. Diese Variablen werden immer geladen. Wenn eine definierte 'section' geladen wird, werden also die globalen Variablen ebenfalls eingelesen. Wenn eine Variable sowohl global als auch in einer 'section' vorkommt, wird die 'section'-Variable verwendet. Wenn zwei Variablen in der gleichen 'section' den selben Namen aufweisen wird die Letztere verwendet, es sei denn $config_overwrite ist deaktiviert ('false').

Konfigurationsdateien werden mit config_load geladen.

Sie können Variablen oder auch ganze 'sections' verstecken indem Sie dem Namen ein '.' voranstellen. Dies ist besonders wertvoll wenn Ihre Applikation sensitive Informationen aus der Konfigurationsdatei liest welche von der Template-Engine nicht verwendet werden. Falls eine Drittpartei eine Änderung an der Konfigurationsdatei vornimmt können Sie so sicherstellen, dass die sensitiven Daten nicht in deren Template geladen werden können.

Siehe auch: {config_load}, $config_overwrite, get_config_vars(), clear_config() und config_load()

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors