Das Verhalten dieser Funktionen wird durch Einstellungen in der php.ini beeinflusst.
Name | Standard | Veränderbar | Changelog |
---|---|---|---|
assert.active | "1" | PHP_INI_ALL | |
assert.bail | "0" | PHP_INI_ALL | |
assert.warning | "1" | PHP_INI_ALL | |
assert.callback | NULL | PHP_INI_ALL | |
assert.quiet_eval | "0" | PHP_INI_ALL | |
assert.exception | "0" | PHP_INI_ALL | Verfügbar von PHP 7.0.0 an. |
enable_dl | "1" | PHP_INI_SYSTEM | Dieses veraltete Feature wird in der Zukunft sicherlich entfernt. |
max_execution_time | "30" | PHP_INI_ALL | |
max_input_time | "-1" | PHP_INI_PERDIR | |
max_input_nesting_level | "64" | PHP_INI_PERDIR | Verfügbar von PHP 5.2.3 an. |
max_input_vars | 1000 | PHP_INI_PERDIR | Verfügbar von PHP 5.3.9 an. |
magic_quotes_gpc | "1" | PHP_INI_PERDIR | Entfernt in PHP 5.4.0. |
magic_quotes_runtime | "0" | PHP_INI_ALL | Entfernt in PHP 5.4.0. |
zend.enable_gc | "1" | PHP_INI_ALL | Verfügbar von PHP 5.3.0 an. |
Hier eine kurze Erklärung der Konfigurationsoptionen:
assert.active
bool
Aktiviert die assert()-Auswertung.
assert.bail
bool
Beendet bei fehlgeschlagener Assertion die Ausführung eines Skripts.
assert.warning
bool
Erzeugt bei jeder fehlgeschlagenen Assertion eine PHP-Warnung.
assert.callback
string
Eine benutzerdefinierte Funktion, die bei fehlgeschlagenen Assertions ausgeführt wird.
assert.quiet_eval
bool
Verwendet während der Auswertung eines Assertion-Ausdrucks die aktuelle Einstellung von error_reporting(). Ist diese Einstellung aktiviert, werden während der Auswertung keine Fehler angezeigt (implizit error_reporting(0)). Falls deaktiviert, werden Fehler entsprechend der Einstellung von error_reporting() angezeigt.
assert.exception
bool
Erzeugt eine AssertionError-Exception für die fehlgeschlagene Assertion.
enable_dl
bool
Diese Einstellung ist nur nützlich, wenn PHP als Apache-Modul kompiliert wurde. Sie können das dynamische Laden von PHP-Erweiterungen mittels dl() für virtuelle Server oder per Verzeichnis an- und abschalten.
Der Hauptgrund, das dynmische Laden abzustellen, sind Sicherheitsüberlegungen. Mit dem dynamischen Laden ist es möglich, alle open_basedir-Einschränkungen zu umgehen. Der Standardwert ist, das dynamische Laden zuzulassen.
max_execution_time
int
Legt die maximale Zeit in Sekunden fest, die ein Skript laufen darf,
bevor der Parser die Ausführung stoppt. Diese Einstellung hilft zu
verhindern, dass schlampig geschriebene Skripte Ihren Server lahmlegen.
Der Standardwert für diese Einstellung ist 30
Sekunden. Wird PHP von der
Kommandozeile ausgeführt, so
ist der Standardwert 0
.
Auf Nicht-Windows-Systemen beeinhaltet die maximale Ausführungszeit keine Systemaufrufe, Streamoperationen usw. Weitere Details finden Sie bei der Funktion set_time_limit().
Ihr Webbserver kann andere Timeout-Einstellungen haben, die ebenfalls
die PHP-Ausführung unterbrechen können. Apache hat eine
TimeOut
-Direktive und IIS hat eine
CGI-Timeout-Funktion. Beide sind als Standardwert auf 300 Sekunden
eingestellt. Genauere Informationen finden Sie in der Dokumentation
Ihres Webservers.
max_input_time
int
Legt die maximale Zeit in Sekunden fest, die ein Skript verbrauchen
darf, um Eingabedaten wie POST, GET und Dateiuploads zu verarbeiten. Die
Zeitmessung beginnt, sobald PHP auf dem Server aufgerufen wird, und
endet, wenn die Ausführung beginnt. Der Standardwert ist
-1
, was bedeutet, dass stattdessen
max_execution_time
verwendet wird. Der Wert 0
bedeutet kein Zeitlimit.
max_input_nesting_level
int
Legt die maximale Verschachtelungtiefe für Eingabevariablen (z.B. $_GET, $_POST) fest.
max_input_vars
int
Wie viele
Eingabe-Variablen
maximal angenommen werden (dieses Limit wird auf die superglobalen
$_GET, $_POST und $_COOKIE separat angewandt). Die Verwendung dieser
Einstellung verringert die Möglichkeit von Denial-of-Service-Angriffen,
die Hash-Kollisionen nutzen. Wenn mehr Eingabe-Variablen gesendet
werden, als mit dieser Einstellung erlaubt ist, wird ein Fehler der
Stufe E_WARNING
ausgelöst und weitere
Eingabe-Variablen werden nicht angenommen.
magic_quotes_gpc
bool
Dieses Feature wurde in PHP 5.3.0 als DEPRECATED (veraltet) markiert und ist seit PHP 5.4.0 ENTFERNT.
Legt die magic_quotes-Einstellungen für GPC (Get/Post/Cookie) fest. Ist diese Einstellung auf on, werden alle ' (einzelne Anführungszeichen), " (doppelte Anführungszeichen), \ (Backslash) und NUL's automatisch mit einem Backslash maskiert.
Siehe auch get_magic_quotes_gpc().
magic_quotes_runtime
bool
Dieses Feature wurde in PHP 5.3.0 als DEPRECATED (veraltet) markiert und ist seit PHP 5.4.0 ENTFERNT.
Falls magic_quotes_runtime
aktiviert ist, werden
die meisten Funktionen, die Daten von einer beliebigen externen Quelle
zurückgeben, inklusive Datenbanken und Textdateien, die in den Daten
enthaltenen Anführungszeichen mit einem Backslash maskiert zurückgeben.
Funktionen, die von magic_quotes_runtime
betroffen sind (ohne die Funktionen aus PECL):
zend.enable_gc
bool
Aktiviert bzw. deaktiviert die Speicherbereinigung zirkulär abhängiger Referenzen.