Scriptindex.de

[ Menü ]

Home
News
Scripts
Neuzugänge
Suchen
Bücher
Manuals

[ Inhalt ]

Script eintragen
Tutorial eintragen
Newsletter
Umfragen
Link zu uns
Werbung bei uns
Kontakt
Impressum

[ Statistik ]

Hits gesamt: 5200148
Hits Heute: 845
max. Hits (10.07.07): 6964
User Online: 30
Scripts: 2828

[ Partner ]

CodeBase
I.S.U.M.
LUG Bayreuth
PEAR NEWS
PHP Classes

[ Facebook ]

[ Eigene Domain? ]

[ Buchtipp ]

.NET Framework GE-PACKT
.NET Framework GE-PACKT

Manuals > Smarty > include_php (PHP-Code einbinden)

7.5. include_php (PHP-Code einbinden)

Attribut NameTypErforderlichStandardwertBeschreibung
filestringJan/aDer Name der einzubindenden PHP-Datei.
oncebooleanNeintrueDefiniert ob die Datei mehrmals geladen werden soll, falls sie mehrmals eingebunden wird.
assignstringNeinn/aDer Name der Variable, der die Ausgabe von include_php zugewiesen wird.

include_php-Tags werden verwendet, um PHP-Skripte in Ihre Templates einzubinden. Falls 'Sicherheit' aktiviert ist, muss das einzubindende Skript im '$trusted_dir' Pfad liegen. 'include_php' muss das Attribut 'file' übergeben werden, das den Pfad - entweder relativ zu '$trusted_dir' oder absolut - zum Skript enthält.

include_php ist ein einfacher Weg, um modularisierte Templates zu verwenden und PHP-Code von HTML zu separieren. Sie haben zum Beispiel ein Template für die Seitennavigation, welche direkt aus der Datenbank bezogen wird. Die Logik, die den Datenbankinhalt bezieht, können sie in einer eigenen Datei ablegen und am Anfang Ihres Templates einbinden. Nun können Sie das Template überall wiederverwenden, ohne sich Gedanken zu machen, wie der Inhalt in die Navigationsstruktur gelangt.

Normalerweise wird ein PHP-Skript nur einmal pro Aufruf geladen, selbst wenn es mehrfach eingebunden wird. Sie können dieses Verhalten durch die Verwendung des once Attributs steuern. Wenn Sie 'once' auf 'false' setzen, wird die Datei immer wenn sie eingebunden wird auch neu geladen.

Optional kann das assign Attribut übergeben werden. Die Ausgabe von include_php wird dann nicht direkt eingefügt, sondern in der durch assign benannten Template-Variable abgelegt.

Das Objekt '$smarty' kann in dem eingebundenen PHP-Script über '$this' angesprochen werden.

Beispiel 7-9. Funktion include_php

lade_nav.php ------------- <?php // lade die Variablen aus einer MySQL-Datenbank und weise sie dem Template zu require_once("MySQL.class.php"); $sql = new MySQL; $sql->query("select * from site_nav_sections order by name",SQL_ALL); $this->assign($sections,$sql->record); ?> index.tpl --------- {* absoluter Pfad, oder relativ zu '$trusted_dir' *} {include_php file="/pfad/zu/lade_nav.php"} {foreach item=$aktuelle_section from=$sections} <a href=""></a><br>

Copyright 1998 - 2009 by I.S.U.M.