Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá amigos, bom estou precisando fazer o seguinte, irei explicar da melhor maneira possível
no meu banco de dados eu tenho uma data que é a data de expiração que é "DataExpiracao = DataAtual + Quantidade de tempo"(timestamp), certo agora eu faço o seguinte, pego a data do banco de dados que é a data que vai expirar e subtraio pela data atual "DataExpiracao - DataAtual"(isso tudo em timestamp), bom fazendo isso vai retornar a quantida de tempo que resta para expirar, agora preciso escrever na tela da seguinte maneira:
Ex:
"Faltam: 0 Ano(s) 1 Mês(es) 5 Dia(s) 4 Hora(s) 3 Minuto(s) para expirar".
Obrigado a todos que tentarem ajudar.
Obrigado.
Use a classe DateTime se sua versão do PHP for >= 5.3.0
<?php
$dataAtual = new DateTime( ); // data atual
$dataExpiracao = new DateTime( );
$dataExpiracao->setTimestamp( time( ) + 100000 ); // data atual mais quantidade x de tempo em unixtimestamp
$diff = $dataAtual->diff( $dataExpiracao ); // calcula a diferença de tempo
echo $diff->format( '%Y Anos, %m Meses, %d Dias, %H Horas, %i Minutos e %s Segundos' );
?>também serviu de grande ajuda. Obrigado.
/* Devido à variação de dias entre os meses (pode ter 28, 29, 30 ou 31), o cálculo com diferenças entre timestamps nunca poderá ser exato, a não ser que o cálculo comece pelo número de dias (ou horas, minutos, segundos). Para minimizar ao máximo essa diferença, eu criei esta constante para utilizar durante o cálculo:
*/
{
if (($inicio == 'm') || ($comecou == true))
{
if (($inicio == 'd') || ($comecou == true))
{
if (($inicio == 'H') || ($comecou == true))
{
if (($inicio == 'i') || ($comecou == true))
{
Como usar:
/* Retornará: Array ( */ /* Retornará: Array ( */// Com timestamps:
/* Retornará:
Array
(
*/
?>