Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Maykonn

ini_set()

Recommended Posts

Sei que algumas diretivas do PHP não podem ser alteradas através de ini_set(), mas creio que essa seja:

 

ini_set('date.timezone', 'America/Sao_Paulo');

 

Mas não é possível, o PHP continua alertando para configurar timezone.

Como resolver?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual a sua versão do PHP ?

 

Aqui tem a lista de parametros e a versão do PHP que pode ser usado: www.php.net/manual/en/ini.list.php

 

Minha versão é 5.3.4.

 

 

Só para constar: existe uma função específica para isso

 

http://php.net/manual/en/function.date-default-timezone-set.php

 

Sim, porém até mesmo com ela não é possível.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só para constar: existe uma função específica para isso

 

http://php.net/manua...imezone-set.php

 

Sim, porém até mesmo com ela não é possível.

 

Você chegou a testar se o timezone está correto ou você acha que não está apenas porque a hora está errada?

 

Caso ainda não tenha testado faça o seguinte:

 

date_default_timezone_set('America/Sao_Paulo');
echo date_default_timezone_get();

 

Se o timezone retornado for o mesmo que você setou o problema pode ser na hora do servidor que está errada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ini_set('display_errors',0);

Também não altera o valor da diretiva e continua como deixei no php.ini, true.

 

Então se faço:

if(date_default_timezone_set('America/Sao_Paulo'))
print 'Setou';
else
print 'Não setou';

 

Beleza, retorna Setou.

Mas se dou um erro de propósito no script - como tirar uma vírgula - o PHP me retorna:

 

Warning: Unknown: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST'...

 

Sei que o erro acima é um Warning mas como tenho E_ALL setado para error_reporting isso interrompe a execução.

Agora, a dúvida é, porque o ini_set não esta alterando o valor das diretivas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.