Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
dev:284:registry [17.11.2014 11:17] – [Die Registry (WbAdaptor)] Manuela v.d.Decken | dev:284:registry [26.09.2023 06:31] – [Geänderte Bezeichner] 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 | ||
|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 46: | ||
|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 54: | ||
|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 66: | ||
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 | + | * 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(' | ||
* 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\\ <code> $sPath = rtrim($sPath, |
- | | + | * Führende |
- | * Um führende | + | |
ALT => NEU Beispiele: | ALT => NEU Beispiele: | ||
Zeile 82: | Zeile 89: | ||
===== 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: | ||