Line 36:
Line 36:
...
...
</source>
</source>
−
Wenn Sie eine vorhandene Projektdatei bearbeiten, müsssen Sie eine neue Copyright-Zeile im Header hinzufügen.
+
Wenn Sie eine vorhandene Projektdatei bearbeiten, müssen Sie eine neue Copyright-Zeile im Header hinzufügen.
=PHP-Normen=
=PHP-Normen=
==PHP==
==PHP==
−
*Dolibarr is in PHP geschrieben und unterstützt alle Versionen von PHP, welche höher sind, als {{PHPMinVersion}}. Alle Dateien müssen mit der Erweiterung .php enden.
+
*Dolibarr ist in PHP geschrieben und unterstützt alle Versionen von PHP, welche höher sind, als {{PHPMinVersion}}. Alle Dateien müssen mit der Erweiterung .php enden.
−
*Die Verwendung von PHP superglobalen Variablen muss über die festgelegten Operatoren $_COOKIES, $_SERVER, $_ENV erfolgen. Allerdings muss die Dolibarr-Funktion GETPOST () verwendet werden, um den Inhalt von $_GET oder $_POST abzurufen.
+
*Die Verwendung von PHP superglobalen Variablen muss über die festgelegten Operatoren $_COOKIES, $_SERVER, $_ENV erfolgen.
+
*Allerdings muss die Dolibarr-Funktion GETPOST () verwendet werden, um den Inhalt von $_GET oder $_POST abzurufen.
*Andere Operatoren wie ($HTTP_SERVER_GET, ...) sind veraltet und dürfen daher nicht verwendet werden. Der Code muss funktionieren, wenn die Option '''register_long_arrays''' deaktiviert ist. Desweiteren muss der Code funktionieren, wenn die PHP-Option '''register_globals''' deaktiviert ist (wird von PHP empfohlen). Allerdings muss er auch funktionieren wenn die Option '''register_globals''' aktiviert ist (standardmäßig bei vielen Installationen).
*Andere Operatoren wie ($HTTP_SERVER_GET, ...) sind veraltet und dürfen daher nicht verwendet werden. Der Code muss funktionieren, wenn die Option '''register_long_arrays''' deaktiviert ist. Desweiteren muss der Code funktionieren, wenn die PHP-Option '''register_globals''' deaktiviert ist (wird von PHP empfohlen). Allerdings muss er auch funktionieren wenn die Option '''register_globals''' aktiviert ist (standardmäßig bei vielen Installationen).
Line 49:
Line 50:
*Verwenden Sie nicht '''<s>PHP_SELF</s>'''. Stattdessen verwenden Sie '''$_SERVER["PHP_SELF"]'''. Beachten Sie weiterhin, dass das Dolibarr-Framework den Inhalt der Variablen $_SERVER["PHP_SELF"] bereinigt. (Siehe Datei '''main.inc.php''').
*Verwenden Sie nicht '''<s>PHP_SELF</s>'''. Stattdessen verwenden Sie '''$_SERVER["PHP_SELF"]'''. Beachten Sie weiterhin, dass das Dolibarr-Framework den Inhalt der Variablen $_SERVER["PHP_SELF"] bereinigt. (Siehe Datei '''main.inc.php''').
−
*Wenn mehrere Variablen mit demselben Wert initialisiert werden müssen, müssen Sie einzelne Deklarationen verwenden (getrennt durch ''';''' ).
+
*Wenn mehrere Variablen mit demselben Wert initialisiert werden sollen, müssen Sie einzelne Deklarationen verwenden (getrennt durch ''';''' ).
<source lang="php">
<source lang="php">
Line 100:
Line 101:
*Funktionen müssen bei Erfolg einen Wert zurückgeben, der größer/gleich 0 ist und bei Fehlern zwingend kleiner als 0 ist
*Funktionen müssen bei Erfolg einen Wert zurückgeben, der größer/gleich 0 ist und bei Fehlern zwingend kleiner als 0 ist
−
*Es darf kein Code im Dolibarr-Kerncode vorhanden sein, welcher nur von Externen Modulen verwendet wird (Toter Code). Code von externen Modulen muss in den externen Modulen enthalten sein.
+
*Es darf kein Code im Dolibarr-Kerncode vorhanden sein, welcher nur von Externen Modulen verwendet wird (Toter Code). Code von externen Modulen muss in den externen Modulen enthalten sein.
*Verwenden Sie "include_once" für alles, was Funktionen oder Klassendefinitionen enthält (wie * .class.php- und * .lib.php-Dateien), und "include" für PHP-Dateien im Vorlagenstil, die HTML- und PHP-Code enthalten (wie * .inc.php und * .tpl.php Dateien).
*Verwenden Sie "include_once" für alles, was Funktionen oder Klassendefinitionen enthält (wie * .class.php- und * .lib.php-Dateien), und "include" für PHP-Dateien im Vorlagenstil, die HTML- und PHP-Code enthalten (wie * .inc.php und * .tpl.php Dateien).
Line 121:
Line 122:
{{TemplatePHPFields}}
{{TemplatePHPFields}}
−
=SQL rules=
+
=SQL Regeln=
==DDL file format==
==DDL file format==