Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| dev:284:registry [28.11.2014 15:12] – [Geänderte Bezeichner] Manuela v.d.Decken | dev:284:registry [26.09.2023 07:09] (aktuell) – Manuela v.d.Decken | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Die Registry (WbAdaptor) ====== | ====== Die Registry (WbAdaptor) ====== | ||
| - | Programmieren ohne globale Konstanten. | + | Programmieren ohne **globale** Konstanten |
| Mittelfristig ist geplant, in WebsiteBaker eine ' | Mittelfristig ist geplant, in WebsiteBaker eine ' | ||
| Zeile 12: | Zeile 12: | ||
| Globale Konstanten sind ja, wie schon seit langem bekannt, ab dieser Version deprecated, sprich unerwünscht. Siehe: [[dev: | Globale Konstanten sind ja, wie schon seit langem bekannt, ab dieser Version deprecated, sprich unerwünscht. Siehe: [[dev: | ||
| - | Selbstverständlich funktioniert das jetzt nicht so, dass man alle bisherigen Konstanten einfach nur Ersatzlos streicht. Das ist schlichtweg unmöglich. Zumindest im ersten Schritt stellt die Klasse ' | + | Selbstverständlich funktioniert das jetzt nicht so, dass man alle bisherigen Konstanten einfach nur Ersatzlos streicht. Das ist schlichtweg unmöglich. Zumindest im ersten Schritt stellt die Klasse ' |
| Eine wesentliche Änderung hat sich bei der Schreibweise der Bezeichner ergeben:\\ | Eine wesentliche Änderung hat sich bei der Schreibweise der Bezeichner ergeben:\\ | ||
| - | Wurden die Bezeichner bisher ausschließlich in Großbuchstaben geschrieben und mehrere Einzelworte durch einen Unterstrich **_** getrennt, so bestehen die neuen Bezeichner zwar weiterhin aus der selben Zeichenfolge, | + | Wurden die Bezeichner bisher ausschließlich in Großbuchstaben geschrieben und mehrere Einzelworte durch einen Unterstrich **_** getrennt, so bestehen die neuen Bezeichner zwar meist weiterhin aus der selben Zeichenfolge, |
| __Beispiel: | __Beispiel: | ||
| - | Die Transformation der Bezeichner erfolgt automatisch beim Einlesen in die Klasse WbAdaptor. | + | Die Transformation der Konstanten-Bezeichner erfolgt automatisch beim Einlesen in die Klasse WbAdaptor. |
| Soweit so gut. Damit es nicht ganz so einfach wird, hat sich bei einem runden Dutzend ehemaliger Konstanten der Bezeichner(Schlüssel) komplett verändert und auch teilweise der Inhalt!! | Soweit so gut. Damit es nicht ganz so einfach wird, hat sich bei einem runden Dutzend ehemaliger Konstanten der Bezeichner(Schlüssel) komplett verändert und auch teilweise der Inhalt!! | ||
| Zeile 26: | Zeile 26: | ||
| ===== Geänderte Bezeichner ===== | ===== Geänderte Bezeichner ===== | ||
| - | Liste mit neuen Bezeichnern und Beispielen des jetzigen Inhaltes. | + | Liste mit neuen Bezeichnern und Beispielen des jetzigen Inhaltes.\\ |
| + | FIXME (Achtung: diese Liste ist nicht vollständig!) | ||
| ^alte Konstante | ^alte Konstante | ||
| + | |NEW | ||
| + | |NEW | ||
| + | |NEW | ||
| + | |NEW | ||
| + | |NEW | ||
| + | |NEW | ||
| + | |NEW | ||
| |WB_URL | |WB_URL | ||
| |WB_REL | |WB_REL | ||
| |WB_PATH | |WB_PATH | ||
| + | |ADMIN_DIRECTORY | ||
| |ADMIN_URL | |ADMIN_URL | ||
| |ADMIN_REL | |ADMIN_REL | ||
| Zeile 38: | Zeile 47: | ||
| |TEMPLATE | |TEMPLATE | ||
| |TEMPLATE_DIR | |TEMPLATE_DIR | ||
| - | |{neu eingeführt} | + | |NEW |TemplateUrl |
| - | |{neu eingeführt} | + | |NEW |TemplateRel |
| - | |{neu eingeführt} | + | |NEW |TemplatePath |
| - | |ADMIN_DIRECTORY | + | |
| |PAGES_DIRECTORY | |PAGES_DIRECTORY | ||
| |MEDIA_DIRECTORY | |MEDIA_DIRECTORY | ||
| Zeile 47: | Zeile 55: | ||
| |WB_REVISION | |WB_REVISION | ||
| |WB_SP | |WB_SP | ||
| - | |{neu eingeführt} | + | |NEW |AppName |
| |STRING_DIR_MODE | |STRING_DIR_MODE | ||
| |OCTAL_DIR_MODE | |OCTAL_DIR_MODE | ||
| Zeile 59: | Zeile 67: | ||
| Unabhängig von den geänderten Präfixes gelten folgende Regeln für Endungen: | Unabhängig von den geänderten Präfixes gelten folgende Regeln für Endungen: | ||
| - | * xxx**Url** beinhaltet grundsätzlich eine vollwertige URL mit Protokollangabe | + | * xxx**Url** beinhaltet grundsätzlich eine vollwertige URL mit Protokollangabe. Eine URL endet **immer** mit einem Slash ** / ** ohne einen Dateinamen |
| * xxx**Path** beinhaltet einen vollwertigen Pfad ausgehend vom Wurzelverzeichnis des physikalischen Dateisystems und beginnt **immer** mit einem Slash** / ** bzw. **c:/** unter Windows. | * xxx**Path** beinhaltet einen vollwertigen Pfad ausgehend vom Wurzelverzeichnis des physikalischen Dateisystems und beginnt **immer** mit einem Slash** / ** bzw. **c:/** unter Windows. | ||
| * xxx**Rel** beinhaltet einen absoluten Pfad, ausgehend von DOCUMENT_ROOT und beginnt **immer** mit einem Slash** / ** | * xxx**Rel** beinhaltet einen absoluten Pfad, ausgehend von DOCUMENT_ROOT und beginnt **immer** mit einem Slash** / ** | ||
| * xxx**Dir** beinhaltet ein oder mehrere aufeinanderfolgende Verzeichnisnamen, | * xxx**Dir** beinhaltet ein oder mehrere aufeinanderfolgende Verzeichnisnamen, | ||
| __Für alle Angaben gemeinsam gilt:__ | __Für alle Angaben gemeinsam gilt:__ | ||
| - | * Als PATH_SEPERATOR ist ausschließlich der Slash** / ** zugelassen. Anpassungen können problemlos erfolgen mit\\ <php> $sPath = str_replace(' | + | * Als PATH_SEPERATOR ist ausschließlich der Slash** / ** zugelassen. Anpassungen können problemlos erfolgen mit\\ <code> $sPath = str_replace(' |
| * Ist das letzte Element einer URL-,Rel-, Path-, oder Dir-Angabe ein Verzeichnis, | * Ist das letzte Element einer URL-,Rel-, Path-, oder Dir-Angabe ein Verzeichnis, | ||
| - | * Um sicher zu stellen, dass ein Verzeichnis mit einem einzelnen Slash** / **abgeschlossen wird genügt die kurze Sequenz\\ <php> $sPath = rtrim($sPath, | + | * Um sicher zu stellen, dass ein Verzeichnis mit einem einzelnen Slash** / **abgeschlossen wird genügt die kurze Sequenz\\ <code> $sPath = rtrim($sPath, |
| - | * Führende Slashes** / **werden entfernt mit\\ <php> $sPath = ltrim($sPath, | + | * Führende Slashes** / **werden entfernt mit\\ <code> $sPath = ltrim($sPath, |
| ALT => NEU Beispiele: | ALT => NEU Beispiele: | ||
| Zeile 82: | Zeile 90: | ||
| ===== Anwendung von WbAdaptor ===== | ===== Anwendung von WbAdaptor ===== | ||
| - | Diese Klasse ist von überall zu erreichen. Es genügt völlig, die einzig existierende, | + | Diese Klasse ist von überall zu erreichen. Es genügt völlig, die einzig existierende, |
| :!: Es wird dringend empfohlen, den Bezeichner // | :!: Es wird dringend empfohlen, den Bezeichner // | ||
| Auch der Abruf der einzelnen Werte ist recht unproblematisch: | Auch der Abruf der einzelnen Werte ist recht unproblematisch: | ||
| - | <php> echo $oReg-> | + | <code> echo $oReg-> |
| Ausgabe: | Ausgabe: | ||