Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Alguém tem ideia de como eu poderia inserir datas no banco com algum código que calculasse o ano após 2037? Vamos aos detalhes.
Se eu usar, por exemplo, os códigos abaixo o resultado vai para 1970.
>
echo "Hoje é: " . date("d/m/Y") . "<br>";
$data_anterior = mktime(0, 0, 0, date("m"), date("d"), date("Y")+34);
echo "data: " . date("d/m/Y", $data_anterior);
ou
echo date('d/m/Y', strtotime("+34 years",strtotime('20-07-2011')));
Em um laço para eu acrescentar as datas, depois de 2037 zica tudo...
Obs: mas por que eu vou querer criar registros depois de 2037? Pensem, por exemplo, em um sistema que registre um plano habitacional em que são geralmente milhões de meses...
Valeu
valeu Saraiva, perfeita essa classe.
segue um bom link para quem quiser saber o básico sobre como usar...
Se você olhar no próprio manual do php vera sobre isso.
http://www.php.net/manual/en/function.date.php
>
Version Description 5.1.0 The valid range of a timestamp is typically from Fri, 13 Dec 1901 20:45:54 GMT to Tue, 19 Jan 2038 03:14:07 GMT. (These are the dates that correspond to the minimum and maximum values for a 32-bit signed integer). However, before PHP 5.1.0 this range was limited from 01-01-1970 to 19-01-2038 on some systems (e.g. Windows).
Este problema é relacioando a trabalhar com datas no formato timestamp.
Soluções:
mais links sobre este problema:
http://pt.wikipedia.org/wiki/Problema_do_ano_2038