ini_set, set_time_limit, (max_execution_time) - not working

If I do set_time_limit(50) or ini_set('max_execution_time',50), then when I echo ini_get('max_execution_time') on my localhost i get 50, but when I do this on another server it echoes the default 30 and completely ignores my request. Why is this?


You can not change this setting with ini_set() when running in safe mode. The only workaround is to turn off safe mode or by changing the time limit in the php.ini.

-- PHP manual, Runtime Configuration, description of max_execution_time

Many hosts run in safe mode. The other server is most likely one of them.

Edit: The same restriction is in place on set_time_limit:

This function has no effect when PHP is running in safe mode. There is no workaround other than turning off safe mode or changing the time limit in the php.ini.

-- PHP manual, set_time_limit page


Does GoDaddy allow you to edit their remote PHP.INI file, or (achieving the same function) set those options at runtime? Many restrictive hosts (and I don't know this about GoDaddy one way or the other) won't let you futz with PHP options either via the config file or at runtime as you did on WAMP. It could be that though you're still calling that function, it's not being applied.

Use

echo 'Time Limit = ' . ini_get('max_execution_time') .

The manual says that if it's set at all in the PHP.INI, that will override this runtime. PHP Manual on set_time_limit


You can change max_execution_time.
Upload a 1 line (max_execution_time = 600) php5.ini to your root folder (where php.ini resides).