Links
Artikel bewerten:
Bitte bewerten Sie den Artikel per Klick auf einen der angezeigten Sterne:
Zurück zum Artikel!
Die generische Generierung von Links bzw. URLs ist so alt wie die Geschichte der dynamischen
Web-Applikationen selbst. Die Anforderung an ein derartiges Tool ist entgegen der Komplexität
der Implementierung denkbar einfach: URLs auf Basis von bestehenden manipulieren und dadurch neue
erstellen zu können. Der Anforderung kommt das Adventure PHP Framework mit der Komponente
linkHandler nach. Diese Komponente ermöglicht es eine bestehende URL mit
gewünschten Parametern zu manipulieren oder eine neue URL zu generieren.
In vielen Applikationen gibt es den Fall, dass in einem Eintrag ein Link gesetzt werden muss, der
für den aktuellen Eintrag ein Ereignis generiert. Im Fall des später aufgezeigten
Gästebuchs ist das der Löschen-Button der Gästebuch-Administration. Dabei ist die
Basis-URL gleich, es müssen nur einige Parameter geändert werden. Um nicht bei jedem
Detail-Eintrag darauf achten zu müssen, welche Parameter die URL aktuell hat und wie die evtl.
schon vorhandenen Parameter ausgetauscht werden können reicht ein einfaches
$EntryID = '4711';
echo linkHandler::generateLink(
$_SERVER['REQUEST_URI'],
array(
'view' => 'deleteentry',
'entryid' => $EntryID,
'action' => ''
)
);
um die neue URL zu generieren. Hierbei wird der Parameter view auf den Wert
deleteentry und entryid auf 4711 gesetzt, der
Parameter action aus der URL gelöscht, gleichwo die Parameter bisher in der
URL standen.
Um das Tool verwenden zu können muss dieses jedoch zunächst per
import('tools::link','linkHandler');
eingebunden werden. Anschließend kann es überall verwendet werden.
Die Generierung von Frontcontroller-URLs übernimmt die Komponente frontcontrollerLinkHandler.
Diese wird jedoch unter FrontController
näher beschrieben.
Kommentare
Möchten Sie den Artikel eine Anmerkung hinzufügen, oder haben Sie ergänzende Hinweise? Dann können Sie diese hier einfügen. Die bereits verfassten Anmerkungen und Kommentare finden Sie in der untenstehenden Liste.
Für diesen Artikel liegen aktuell keine Kommentare vor.