Hello,
damit Du nicht denkst, dass ich Dich vergessen habe.
Für Deinen Fall der strengen Eingangsprüfung müsste man mit dieser Struktur auskommen. Einige Elemente enthalten bereits "Ausblicke" auf die Entwicklung der Schnittstellenbeschreibung
$_form = array();
$_form['name'] = array(); # Pfad des Parameters im POST-Array
$_form['priv'] = array(); # R_equired, O_ptional, P_rohibited, C_reate if missing
$_form['default_type'] = array(); # None, Fixed, API-Funktion, DB-Field, DB-Query
$_form['default'] = array(); # Default on Creation (hier steht dann der String)
$_form['in_check'] = array(); # Request geprüft
Pfad des Parameter ist der linearisierte Name (PHP macht hin, wir zurück *g* )
R_equired, Parameter muss im Request enthalten sein
O_ptional, Parameter kann im Request vorhanden sein
P_rohibited, Parameter darf im Request nicht enthalten sein
C_reate if missing Parameter wird im Buffer ergänzt, wenn er im Request fehlt
default: Was steht im Default-Feld drin?
None, Kein Default ==> NULL, Zufallswert?
Fixed, Konstante
API-Funktion, NULL, false, PHP-Ausdruck, z.B. Variable, Funktion, o.ä.
DB-Field, Starre Kopplung zu einem Datenbank-Wert
DB-Query Abfrage-String aus der Datenbank
in_check: Eingangsprüfung wurde durchgeführt
Request geprüft false, true oder lieber 0,1,2 noch nicht geprüft, fehlerfrei, FGeherl?
ist notwendig für Probe und Gegenprobe, um fehlende Parameter zu finden
Das stelle ich jetzt mal zur Diskussion.
Diese Tabelle soll in einem der nächsten Schritte die gesamte Schnittstelle beschreiben, also auch die Regeln bei der Response-Generation.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg