ini_set()

Aus PytalWiki
(Weitergeleitet von Ini set)
Wechseln zu: Navigation, Suche

Die Funktion ini_set() von PHP erlaubt es, für die Dauer der Ausführung des Skriptes eine Einstellung von PHP zu ändern. Auch wenn man bei Pytal viele Einstellungen selbst verändern kann, ist der Zugriff auf diese Funktion jedoch aus Sicherheitsgründen deaktiviert. Manche Skripte setzen aber die Verfügbarkeit dieser Funktion voraus, deshalb erscheint bei diesen Skripten unter Umständen eine Fehlermeldung, die etwa wie folgt aussieht:

Warning: ini_set() has been disabled for security reasons ...

Lösung

In dem meisten Fällen ist es ausreichend, einfach die Anzeige der Fehlermeldung zu unterdrücken. Setze dazu in die in der Meldung erwähnten Zeile dem ini_set ein @ voran:

@ini_set( '[irgendwas]', '[irgendwas]' );

Allerdings solltest du beachten, dass die vom Skript vorgesehene Einstellungsänderung trotz Ausbleiben der Fehlermeldung nicht durchgeführt wird. Ist das Skript von einer mit dieser Methode geänderten Einstellung (z.B. Verlängerung der maximalen Ausführszeit max_execution_time) abhängig, so wird es vermutlich auch mit unterdrückter Fehlermeldung nicht korrekt funktionieren.

Skript um alle ini_set mit einmal gegen @ini_set umzutauschen.

find . -iname "*.php" -exec sed -i 's/ini_set/\@ini_set/g' {} \;

Im Rootverzeichnis der Software ausführen, der Befehl funktioniert unter Windows nicht durch Cygwin ist es aber möglich Windows auch POSIX Programme zu ermöglichen.

Siehe auch

Meine Werkzeuge