Home  PHP Projekte  PHP Schulung  Informationsquellen  Geschichte  Core PHP  Fortgeschrittenes PHP  Templates  Was?  Motivation  Klassifizierung  Testvorlage  Keine Templates  PHPLib  IT[X]  HTML  E-Mail  Cache-Technologien  OOH Forms  Technik der Site  Büchertipps  Fotografie  Airbrush  Kontakt  Stuff 
|
Callbacks
In den bisherigen Beispielen gab es keine Möglichkeit
für den Desginer die Darstellung des Datums zu beinflussen.
Um bei einer mehrsprachigen Präsentation vom deutschen auf
das englische Zeitformat umzustellen, waren Eingriffe
in den Programmcode notwendig. Bei der anfallenden Koordination
zwischen Programmierer und Designer geht viel Zeit verloren.
ITX geht einen kleinen Schritt in die Richtung einer
Makrosprache und erlaubt die Definition von Callback-Funktionen.
Im Dokument newsletter_itx.txt
steht dem Designer eine Makrofunktion mit dem Namen "tpl_datum"
zur Verfügung.
| einfache Callbacks mit ITX |
Top |
|
<?php
// Callback-Funktion für das Template
function tpl_date($args) {
$ret = '';
switch ($args[0]) {
case 'de':
default:
$ret = date('d.m.Y', time());
break;
}
return $ret;
}
require_once('HTML/ITX.php');
$itx = new IntegratedTemplateExtension($DOCUMENT_ROOT . '/schulung/templates/');
$itx->loadTemplateFile('newsletter_itx.txt');
// Callback anmelden und Ersetzungen vornehmen
$itx->setCallbackFunction('datum', 'tpl_date');
$itx->performCallback();
$itx->setCurrentBlock('news');
for ($i = 0; $i < 3; $i++) {
$itx->setVariable(
array(
"HEADLINE" => "Headline $i",
"ERSCHEINUNGSDATUM" => date("d.m.Y", time() + $i * 100),
"URL" => "http://www.example.com/$i"
)
);
$itx->parseCurrentBlock();
}
// Diesmal kein Platzhalter DATUM...
$itx->setVariable("KEYWORDS", "schulung, php");
$itx->show();
?>
|
|
Ausgabe
|
Top |
Kiel, den 04.02.2012
Hallo ,
vielen Dank für die Registrierung zu unserem Newsletter.
Einmal im Monat werden wir Sie über Neuigkeiten rund um
PHP informieren.
Falls Sie unseren Dienst nicht mehr nutzen möchten,
so können Sie sich unter http://www.example.com/abmelden.php
mit folgenden Benutzerdaten abmelden:
Benutzerkennung:
Passwort:
+++ News +++
Headline 0
04.02.2012, http://www.example.com/0
Headline 1
04.02.2012, http://www.example.com/1
Headline 2
04.02.2012, http://www.example.com/2
+++ Kontakt +++
http://www.example.com
info@example.com
Ihr www.example.com-Team
--
http://www.example.com - die tägliche Newsquelle
Abmelden? http://www.example.com/abmelden.php |
|
|
< ^ >
|