Thomas: set_time_limit() funktioniert nicht

Hallo zusammen,

Ich habe ein PHP-Skript, das sehr lange laufen soll.
Das Skript bricht bei Ausführung im Browser mit folgender Meldung ab:
Fatal error: Maximum execution time of 60 seconds exceeded in...

Über set_time_limit habe ich versucht, die maximale Ausführungszeit zu erhöhen.
Dabei hatte ich jedoch keinen Erfolg.

Zum prüfen habe ich folgende Zeilen im Anfang meines Skripts eingebaut:

  
$ExecTime = ini_get('max_execution_time');  
print "<h3>$ExecTime Sekunden</h3>";  
set_time_limit(1000);  
$ExecTime = ini_get('max_execution_time');  
print "<h3>$ExecTime Sekunden</h3>";  

Die Ausgabe ist jedoch wie folgt:
60 Sekunden
60 Sekunden
Fatal error: Maximum execution time of 60 seconds exceeded in...

phpinfo() gibt folgende safemode-Parameter als OFF an:
safe_mode
safe_mode_exec_dir
safe_mode_gid
safe_mode_include_dir

Müsste set_time_limit() nicht eigentlich funktionieren, wenn der safe_mode auf Off ist?
Gibt es noch andere Parameter, die das beeinflussen können?

Viele Grüße,
Thomas

  1. Hello,

    Müsste set_time_limit() nicht eigentlich funktionieren, wenn der safe_mode auf Off ist?
    Gibt es noch andere Parameter, die das beeinflussen können?

    Ja, wenn in einer übergeorneten Konfiguration

    php_admin_value max_execution_time 60

    steht, kannst Du das in einer untergeordneten nicht mehr ändern.

    Das gilt zumindest für PHP als Modul des Webservers. Ob es bei CGI/FastCGI auch so ist, weiß ich nicht verbindlich.

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de