Eu tenho esse erro quando eu solicitado para atualizar o PHP versão de 5.2.17 para PHP 5.3.21 no servidor.
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: date(): 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/New_York' for 'EDT/-4.0/DST' instead</p>
<p>Filename: libraries/Log.php</p>
<p>Line Number: 86</p>
</div>
Warning: date(): 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/New_York' for 'EDT/-4.0/DST' instead in /filelocation right here/system/libraries/Log.php on line 86
Warning: date(): 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/New_York' for 'EDT/-4.0/DST' instead in /filelocation right here/system/libraries/Log.php on line 99
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: date(): 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/New_York' for 'EDT/-4.0/DST' instead</p>
<p>Filename: libraries/Log.php</p>
<p>Line Number: 99</p>
</div>
php.ini
usado pelo apache, basta executar o seguinte comandophp -i | grep php.ini
.Se você não pode modificar sua configuração do php.ini, também pode usar o seguinte snippet no início do seu código:
A lista de fusos horários pode ser encontrada em http://www.php.net/manual/en/timezones.php .
fonte
Adicione o seguinte no seu
index.php
arquivo. Me deparei com isso quando mudei meu aplicativo do meu servidor XAMPP para o Apache 2.2 e PHP 5.4 ...Aconselho que você faça isso no seu
index.php
arquivo, e não nophp.ini
arquivo.fonte
ao invés de
funcionou para mim (mostra o ano atual e não mostra mais a mensagem de erro). (Graças a Chris acima)
fonte
Se essas não são suas opções
php.ini
.date_default_timezone
chamada.Em vez de
date
você poderia usargmdate
.Usei
gmdate( "Y" )
quando precisei de um ano para um snipplet de direitos autorais.fonte
Se você estiver usando o CodeIgniter e não puder alterar o php.ini, adicionei o seguinte ao início do index.php:
fonte
Eu sempre mantenho essa linha dentro da raiz do codeigniter
index.php
. Para que meu código funcione em qualquer servidorLista de fusos horários suportados aqui
fonte
@ Justis me indicou a direção certa, mas seu código não funcionou para mim. Isso fez:
Documentação: http://www.php.net/manual/en/function.date-default-timezone-get.php
Essa solução não é apenas para quem não tem acesso total ao sistema. É necessário para qualquer script quando você o fornece a mais alguém além de você. Você nunca sabe em qual servidor o script será executado quando você o distribuir para outra pessoa.
fonte
Esse problema está me incomodando há algum tempo, pois estou tentando injetar um script "createbucket.php" no compositor e continuo sendo informado de que meu fuso horário está incorreto.
No final, a única coisa que corrigiu o problema foi:
$ sudo nano /etc/php.ini
Pesquisar por fuso horário
Certifique-se de remover o
;
Então finalmente
E você estará pronto para ir :)
fonte
Eu tive que colocá-lo entre aspas.
fonte
/etc/php.ini: date.timezone = America/Los_Angeles
Você pode definir o fuso horário no seu
.htaccess
arquivofonte
Além de definir o date.timezone = conforme mencionado em várias respostas, encontrei um erro no arquivo php.ini que impedia que ele chegasse ao date.timezone. A maneira que eu achei foi executando o php na linha de comando em um terminal. isso causou um erro a ser relatado na linha 114. No meu caso, eu havia descomentado uma configuração para exibir erros que tinham '|' entre 2 valores. Não gostou. Eu removi um dos valores e o | e tudo foi bom depois disso
fonte
Um método simples para dois fusos horários.
fonte
Para php (ou sua localização).
fonte
Uma solução rápida, enquanto você corrige as incompatibilidades, é desativar o relatório de erros no seu
index.php
arquivo:Insira a linha abaixo no seu index.php abaixo
define( ‘_JEXEC’, 1 );
fonte
Estou hospedando meu bucket EC2 e S3 na região us-west-2 (Oregon). Quando eu estava ligando
$s3client->listBuckets()
para listar os buckets existentes no meu php, estava recebendo uma exceção -"Uncaught exception 'Exception' with message 'DateTime::__construct(): It is not safe to rely on the system's timezone settings...".
fiz as alterações abaixo para fazê-lo funcionar. Compartilhar esses detalhes caso alguém esteja enfrentando um problema semelhante e alguma das respostas acima não tenha ajudado.ntpstat
comando Se você receber um erro, este link o ajudará a saber o que está errado.date.timezone
não estava definido com nenhum valor e também foi comentado por padrão. Eu não comentei removendo ';' antes desta linha e defina seu valor como"UTC"
e salve o arquivo.sudo service httpd restart
esudo service ntpd restart
comandos.Depois disso, consigo listar os buckets com êxito, sem exceção. Espero que isto ajude.
fonte
Se você estiver usando o Plesk, tente: Primeiro, abra as Configurações do PHP, na parte inferior da página, altere date.timezone de DEFAULT para UTC.
fonte
Eu tive esse erro ao executar o php-fpm em uma prisão chroot. Tentei criar o etc / php.ini e / usr / share / zoneinfo no diretório chroot, mas simplesmente não funcionou. Eu até tentei rastrear os daemons php-fpm para ver qual arquivo estava faltando - nada pulou.
Portanto, caso o Google o traga aqui porque você recebe esse erro ao usar o php-fpm configurado para chroot, provavelmente é possível corrigi-lo adicionando esta linha
/etc/php-fpm.d/www.conf
na seção ENV:Normalmente, é necessário reiniciar o php-fpm para que ele entre em vigor. Espero que isso ajude alguém lá fora.
fonte
No meu caso particular, tenho o PHP configurado para usar o PHP-FPM (FastCGI Process Manager). Ao executar a
phpinfo()
partir da CLI, vi o fuso horário correto que eu havia definido no php.ini, no entanto, ele ainda estava incorreto no navegador e estava causando falha no meu código. Eu simplesmente precisava reiniciar ophp-fpm
serviço no servidor.Você também pode precisar reiniciar o
httpd
serviço se tiver editado ophp.ini
fonte
Esta resposta acima do CtrlX é a resposta correta, mas pode não funcionar completamente. Adicionei esta linha ao meu arquivo php.ini :
mas não removeu o erro PHP de todos os meus arquivos porque alguns dos meus scripts PHP estão em subpastas. Então eu tive que editar o arquivo .htaccess para configurar o php.ini para ser usado recursivamente (em subpastas):
onde account_name é o nome da sua conta cpanel e public_html é a pasta em que o arquivo php.ini está.
fonte
Para usuário do docker: Crie um arquivo timezone.ini local no seu projeto, configure a configuração em docker-compose.yml,
timezone.ini
fonte
Se você não tiver acesso ao arquivo
php.ini
, crie ou edite um.htaccess
arquivo na raiz do seu domínio ou sub e adicione-o (gerado pelo cpanel):fonte
Existem duas opções para resolver isso
Primeiro, mude para o arquivo php.ini e coloque o fuso horário padrão
Depois de definir o fuso horário no php.ini, reinicie o servidor
Em segundo lugar, altere o fuso horário de tempo de execução com base em sua necessidade
fonte
Em sua página de conexão colocar um código como este
date_default_timezone_set("Africa/Johannesburg");
com base em sua localização atual.fonte