====== Erläuterung zur Nutzung der PHP-Klasse für die Einbindung in die eigene Webseite, Fortgeschrittenes Beispiel mit Caching ====== Dieses etwas fortgeschrittenere Beispiel nutzt die eingebauten sehr simplen Caching-Funktionen der FDB-Klasse. Die Nutzung des Caches ermöglicht die Ladezeiten der Seiten erheblich zu verkürzen, da nicht bei jedem Zugriff eine Anfrage an die Forschungsdatenbank geschickt wird. Die Cache-Dateien werden standardmässig in ''/tmp'' abgelegt, dies kann über den Setter ''setCacheDir($dir)'' geändert werden. Die Cache-Dateien haben alle standardmässig den Dateinamenspräfix ''fdb-''. Wird der Parameter ''fdbClearCache'' übergeben, wird der Cache für die aktuelle Parameterkonfiguration neu geschrieben. Wird der Parameter ''fdbClearAllCaches'' übergeben, werden alle Cache-Dateien gelöscht und der Cache für die aktuelle Parameterkonfiguration wird neu geschrieben. ===== Änderung der Standardeinstellungen ====== Die meisten Standardeinstellungen können mit entsprechenden Methoden überschrieben werden. * ''setCacheFilePrefix($string)'' setzt den Präfix der Cache-Dateien neu (muss alphanumerisch sein, standard: ''fdb'') * Mittels ''setCacheDir($dir)'' kann das Cache-Verzeichnis geändert werden * Mittels ''setClearCacheCmd($cmd)'' kann der Parameter zum Cache-Löschen geändert werden * Mittels ''setClearAllCachesCmd($cmd)'' kann der Parameter für das Löschen aller Caches geändert werden ===== Einbindung in die Eigene Webseite (Beispiel für Publikationslisten) ===== setFDBParameter('Kostenstelle','110113'); # Debug Ausgabe aktivieren oder nicht (Bei true wird eine vollstaendige HTML-Seite ausgegeben, anstatt nur der content, default false) $fdb->setXsltDebug(false); # Javascript Ausgabe aktivieren oder nicht (Bei true werden Javascript-Funktionen eingebaut, default true) $fdb->setXsltEnableJavascript(true); # nach oben links anzeigen $fdb->setXsltParameter('enable_totop_backlink','true'); # Darstellung des Publikations-Listings anpassen $fdb->setXsltParameter("publications_listing", "publications_list_alltypes"); # Sprache anpassen, abhaengig von dem Parameter lang in der session # Array zur Uebersetzung von $_SESSION['lang'] (DE,EN) in die Kuerzel, die das XSL erwartet (D,E) $langArray = array( 'EN' => 'E', 'DE' => 'D' ); if (isset($_SESSION['lang']) && in_array($_SESSION['lang'], array_keys($langArray))) { # Sprache setzen $fdb->setXsltParameter("language", $langArray[$_SESSION['lang']]); } else { # fuer den Fall, dass die Sprache nicht bekannt ist, Standard-Sprache (Deutsch) waehlen $fdb->setXsltParameter("language", "D"); } # 24h * 30 Tage $cacheLifetime = 24 * 60 * 60 * 30; # Cache nur neu schreiben, wenn er ungueltig ist $fdb->writeCacheFileIfCacheExpired($cacheLifetime); # echo $fdb->getCacheFile(); # echo 'Cache expired?: ', $fdb->isCacheFileExpired($cacheLifetime) ? 'true' : 'false'; # Cache in die Ausgabe einbinden $fdb->includeCacheInOutput(); ?> {{tag>php techniker tf-infoportal}}