dbxapp 4.5.3
Technische API-Referenz der dbxapp-Plattform
Lade ...
Suche ...
Keine Treffer
dbxWebApp Klassenreferenz

Bereitet Request, Routing, Design und Ausgabe des dbxapp-Frontcontrollers vor. Mehr ...

Öffentliche Methoden

 resolve_base_url (string $uri)
 Ermittelt die Basis-URL des Servers und gibt sie zurück.
 create_new_cfg ($modul='dbx')
 Erstellt eine minimale Default-Konfiguration für ein Modul.
 check_uri ()
 Zerlegt REQUEST_URI in Pfad und Query-Parameter.
 parse_route_url ($url)
 Parst Permalink- und Standard-URLs in Pfad + Query-Parameter.
 build_route_url ($permalink, $params=array(), $fragment='')
 Baut eine kanonische Route-URL aus Permalink, Query-Parametern und Fragment.
 append_route_params ($url, $params=array())
 Hängt Parameter an eine vorhandene Route-URL an.
 route_param_prefix ($url)
 Prefix für Template-Links wie {self}dbx_design=desktop.
 get_request_route_string ($base_uri='')
 Liefert den Routen-Teil des aktuellen Requests (Permalink + Query).
 strip_unwanted_route_params ($params, $unwanted='')
 Entfernt unerwünschte Parameter aus einem Param-Array.
 get_self_url ($permalink, $unwanted)
 Baut die aktuelle Self-URL ohne unerwünschte DBX-Steuerparameter.
 memory_switch_params ()
 Liefert die Remember-/Memory-Schalter, die nicht in Permalinks hängen dürfen.
 normalize_self_url ($url)
 Bereinigt eine Self-/Menu-URL von Memory-Schaltern in Pfad und Query.
 peel_glued_params_from_path ($path, &$params=array())
 Entfernt angeklebte Query-Parameter aus einem Permalink-Pfad.
 normalize_route_params ($params)
 Normalisiert Query-Parameter auf string-Werte.
 get_base_uri ()
 Liefert das Basisverzeichnis des Entry Points als URI.
 get_permalink ($uri)
 Ermittelt den Permalink-Anteil hinter der Basis-URI.
 set_request_uri_to_get ()
 Spiegelt Query-Parameter aus REQUEST_URI nach $_GET.
 check_request ()
 Normalisiert den aktuellen HTTP-Request für den Kernel.
 get_is_resorce ($ext)
 Prüft, ob eine Dateiendung als direkt auslieferbare Ressource gilt.
 check_config ()
 Stellt die zentrale dbx-Konfiguration sicher.
 check_missing ()
 Behandelt fehlende statische Ressourcen.
 check_remember ()
 Übernimmt persistente UI-/Systemwerte aus Remember in den Request.
 get_session_rec ($fld, $default='')
 design_load ($modul_content)
 add_editor_files_data ($content)
 run ()

Ausführliche Beschreibung

Bereitet Request, Routing, Design und Ausgabe des dbxapp-Frontcontrollers vor.

Die Klasse ist kein Router im SPA-Sinn. Sie normalisiert den klassischen PHP-Request für den Single Entry Point index.php:

  • Basis-URL und Self-URL bestimmen
  • Permalink und Query-Parameter auflösen
  • Modul, Design, Sprache und Content-Kontext setzen
  • statische Ressourcen ausliefern
  • Design-Templates und Outputfilter vorbereiten

Beispiel aus dem Frontcontroller-Kontext:

$web = dbx()->get_system_obj('dbxWebApp');
$web->check_request();
$web->check_modul();
$web->check_design();
Verwaltet Datenbankschemata und Schemaabgleiche in der Administration.

Dokumentation der Elementfunktionen

◆ add_editor_files_data()

dbxWebApp::add_editor_files_data ( $content)

Benutzt $json.

◆ append_route_params()

dbxWebApp::append_route_params ( $url,
$params = array() )

Hängt Parameter an eine vorhandene Route-URL an.

Vorhandene Query-Parameter bleiben erhalten und werden mit den neuen Werten überschrieben, wenn derselbe Key erneut gesetzt wird.

Beispiel:

$url = dbx()->append_route_params('kontakt?dbx_lng=de', ['dbx_edit' => 1]);

Ergebnis: kontakt?dbx_lng=de&dbx_edit=1

Parameter
string$urlVorhandene Route-URL.
array$paramsZusätzliche Query-Parameter.
Rückgabe
string Normalisierte Route-URL.

Benutzt $params, $route, build_route_url() und parse_route_url().

◆ build_route_url()

dbxWebApp::build_route_url ( $permalink,
$params = array(),
$fragment = '' )

Baut eine kanonische Route-URL aus Permalink, Query-Parametern und Fragment.

Beispiel:

$url = dbx()->build_route_url('kontakt', ['dbx_lng' => 'de'], '#form');

Ergebnis: kontakt?dbx_lng=de#form

Parameter
string$permalinkRelativer Permalink ohne führenden Slash.
array$paramsQuery-Parameter als Key/Value-Array.
string$fragmentOptionales Fragment inklusive #.
Rückgabe
string Zusammengesetzte Route-URL.

Benutzt $params und normalize_route_params().

Wird benutzt von append_route_params(), get_self_url(), normalize_self_url() und route_param_prefix().

◆ check_config()

dbxWebApp::check_config ( )

Stellt die zentrale dbx-Konfiguration sicher.

Rückgabe
void

Benutzt $config und create_new_cfg().

◆ check_missing()

dbxWebApp::check_missing ( )

Behandelt fehlende statische Ressourcen.

Existiert die Ressource doch im Projektpfad, wird sie direkt ausgeliefert. Andernfalls wird der Fehlzugriff in dbxMissing gezählt.

Rückgabe
bool True, wenn der Request als fehlende Ressource behandelt wurde.

◆ check_remember()

dbxWebApp::check_remember ( )

Übernimmt persistente UI-/Systemwerte aus Remember in den Request.

Betroffen sind Design, Edit-Modus, Sprache und Farbschema.

Rückgabe
void

Benutzt $lng und $page.

◆ check_request()

dbxWebApp::check_request ( )

Normalisiert den aktuellen HTTP-Request für den Kernel.

Diese Methode ist einer der ersten Frontcontroller-Schritte. Sie liest JSON-Body, klassische GET/POST-Parameter, DBX-Ajax-Hilfsfelder und Permalink-Kontext ein und schreibt daraus die zentralen Systemvariablen: dbx_permalink, dbx_self_url, dbx_base_url, dbx_base_uri, dbx_window, dbx_ajax und dbx_go.

Beispiel:

$web = dbx()->get_system_obj('dbxWebApp');
$web->check_request();
Rückgabe
void

Benutzt $route, get_base_uri(), get_permalink(), get_request_route_string(), get_self_url(), parse_route_url() und resolve_base_url().

◆ check_uri()

dbxWebApp::check_uri ( )

Zerlegt REQUEST_URI in Pfad und Query-Parameter.

Rückgabe
string Request-Pfad ohne Querystring.

Benutzt $_SERVER.

◆ create_new_cfg()

dbxWebApp::create_new_cfg ( $modul = 'dbx')

Erstellt eine minimale Default-Konfiguration für ein Modul.

Parameter
string$modulModulname.
Rückgabe
array Erzeugte Konfiguration.

Benutzt $config.

Wird benutzt von check_config().

◆ design_load()

dbxWebApp::design_load ( $modul_content)

Benutzt $lng und $page.

◆ get_base_uri()

dbxWebApp::get_base_uri ( )

Liefert das Basisverzeichnis des Entry Points als URI.

Rückgabe
string URI-Pfad, z.B. /dbxapp/.

Benutzt $_SERVER.

Wird benutzt von check_request(), get_request_route_string(), get_self_url() und set_request_uri_to_get().

◆ get_is_resorce()

dbxWebApp::get_is_resorce ( $ext)

Prüft, ob eine Dateiendung als direkt auslieferbare Ressource gilt.

Parameter
string$extDateiendung ohne Punkt.
Rückgabe
int 1 = Ressource, 0 = keine Ressource.

◆ get_permalink()

dbxWebApp::get_permalink ( $uri)

Ermittelt den Permalink-Anteil hinter der Basis-URI.

Parameter
string$uriBasis-URI.
Rückgabe
string Permalink ohne führenden Slash.

Benutzt $route, get_request_route_string() und parse_route_url().

Wird benutzt von check_request().

◆ get_request_route_string()

dbxWebApp::get_request_route_string ( $base_uri = '')

Liefert den Routen-Teil des aktuellen Requests (Permalink + Query).

Parameter
string$base_uriOptionaler Basis-URI der Installation
Rückgabe
string

Benutzt $_SERVER, $route und get_base_uri().

Wird benutzt von check_request(), get_permalink(), get_self_url() und set_request_uri_to_get().

◆ get_self_url()

dbxWebApp::get_self_url ( $permalink,
$unwanted )

Baut die aktuelle Self-URL ohne unerwünschte DBX-Steuerparameter.

Parameter
string$permalinkAktueller Permalink/Pfad.
string$unwantedKommagetrennte Zusatzparameter, die entfernt werden.
Rückgabe
string Bereinigte Self-URL.

Benutzt $params, $route, build_route_url(), get_base_uri(), get_request_route_string(), parse_route_url() und strip_unwanted_route_params().

Wird benutzt von check_request().

◆ get_session_rec()

dbxWebApp::get_session_rec ( $fld,
$default = '' )

◆ memory_switch_params()

dbxWebApp::memory_switch_params ( )

Liefert die Remember-/Memory-Schalter, die nicht in Permalinks hängen dürfen.

Rückgabe
array<int,string>

Wird benutzt von strip_unwanted_route_params().

◆ normalize_route_params()

dbxWebApp::normalize_route_params ( $params)

Normalisiert Query-Parameter auf string-Werte.

Parameter
array$paramsUnnormalisierte Query-Parameter.
Rückgabe
array Query-Parameter mit string-Werten.

Benutzt $params.

Wird benutzt von build_route_url() und parse_route_url().

◆ normalize_self_url()

dbxWebApp::normalize_self_url ( $url)

Bereinigt eine Self-/Menu-URL von Memory-Schaltern in Pfad und Query.

Parameter
string$url
Rückgabe
string

Benutzt $route, build_route_url(), parse_route_url() und strip_unwanted_route_params().

◆ parse_route_url()

dbxWebApp::parse_route_url ( $url)

Parst Permalink- und Standard-URLs in Pfad + Query-Parameter.

Unterstuetzt:

  • home/seite?dbx_modul=x
  • home/seite&dbx_design=test
  • ?dbx_modul=x
  • angeklebte dbx_* / key_value-Parameter im Pfad
Parameter
string$url
Rückgabe
array{permalink:string,params:array<string,string>,fragment:string}

Benutzt $params, normalize_route_params() und peel_glued_params_from_path().

Wird benutzt von append_route_params(), check_request(), get_permalink(), get_self_url(), normalize_self_url(), route_param_prefix() und set_request_uri_to_get().

◆ peel_glued_params_from_path()

dbxWebApp::peel_glued_params_from_path ( $path,
& $params = array() )

Entfernt angeklebte Query-Parameter aus einem Permalink-Pfad.

Parameter
string$pathPermalink-Pfad, der angeklebte Parameter enthalten kann.
array$paramsZielarray, in das gefundene Parameter geschrieben werden.
Rückgabe
string Bereinigter Pfad ohne angeklebte Query-Parameter.

Benutzt $params.

Wird benutzt von parse_route_url().

◆ resolve_base_url()

dbxWebApp::resolve_base_url ( string $uri)

Ermittelt die Basis-URL des Servers und gibt sie zurück.

Diese Funktion bestimmt das Protokoll, die Host-Adresse und den Port, um eine vollständige URL zu generieren. Falls der Port 4221 ist, wird die Basis-URL aus einer Konfigurationsdatei gelesen.

Die URL wird für Performance-Zwecke zwischengespeichert und kann über dbx_get_Remember aus dem Cache abgerufen werden.

Bewusst nicht get_base_url() genannt: dbx()->get_base_url() (dbxApi.php) ist die weitverbreitete, argumentlose Fassaden-Methode, die nur den bereits berechneten Systemvar-Wert liest. Diese Methode hier berechnet ihn erst (und wird intern von dbx()->get_base_url() befüllt) — gleicher Name auf zwei Klassen hätte zu Verwechslungen geführt.

Parameter
string$uriDer URI, der an die Basis-URL angehängt wird.
Rückgabe
string Die vollständige URL mit angehängtem URI.

Benutzt $_SERVER.

Wird benutzt von check_request().

◆ route_param_prefix()

dbxWebApp::route_param_prefix ( $url)

Prefix für Template-Links wie {self}dbx_design=desktop.

Parameter
string$url
Rückgabe
string

Benutzt $route, build_route_url() und parse_route_url().

◆ run()

dbxWebApp::run ( )

Benutzt $lng, $page und $root.

◆ set_request_uri_to_get()

dbxWebApp::set_request_uri_to_get ( )

Spiegelt Query-Parameter aus REQUEST_URI nach $_GET.

Sinnvoll für Permalink-/Rewrite-Situationen, in denen PHP die Parameter nicht bereits normal in $_GET bereitstellt.

Rückgabe
void

Benutzt $route, get_base_uri(), get_request_route_string() und parse_route_url().

◆ strip_unwanted_route_params()

dbxWebApp::strip_unwanted_route_params ( $params,
$unwanted = '' )

Entfernt unerwünschte Parameter aus einem Param-Array.

Parameter
array$paramsQuery-Parameter als Key/Value-Array.
string$unwantedKommagetrennte Zusatzparameter, die entfernt werden.
Rückgabe
array Bereinigte Query-Parameter.

Benutzt $params und memory_switch_params().

Wird benutzt von get_self_url() und normalize_self_url().


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: