Número de dias entre duas datas

A função abaixo calcula o número de dias existentes entre duas datas informadas no formato brasileiro, podendo ser facilmente alterado.

  1. function diasIntervalo($dataI, $dataF) {
  2.         $diaI = substr($dataI, 0, 2);
  3.         $mesI = substr($dataI, 3, 2);
  4.         $anoI = substr($dataI, 6, 4);
  5.  
  6.         $diaF = substr($dataF, 0, 2);
  7.         $mesF = substr($dataF, 3, 2);
  8.         $anoF = substr($dataF, 6, 4);
  9.  
  10.         $ini = mktime(0,0,0, $mesI, $diaI, $anoI);
  11.         $fim = mktime(0,0,0, $mesF, $diaF, $anoF);
  12.         $dias = round(($fim$ini) / 86400);
  13.  
  14.         return $dias;
  15. }

Como usar:

  1. $dias = diasIntervalo("01/02/2009", "15/03/2009");
  2. $dias -> 42

Comments

3 Responses to “Número de dias entre duas datas”

  1. Tihh on abril 20th, 2009 15:23

    Show de bola!
    Eu tenho uma função igual a esta, porém retorna em segundos!

    😀

  2. Lucas on maio 5th, 2009 19:58

    muito bom…

  3. Ícaro Souza on julho 21st, 2009 3:00

    Show

    Dica se for usar com MYSQL recomendo:

    //SELECT TIMESTAMPDIFF(DAY,’2009-09-10′,’2010-09-10′);
    //result 365
    //——–
    //SELECT TIMESTAMPDIFF(WEEK,’2009-09-10′,’2010-09-10′);
    //result 52 semanas
    e por ai vai
    //ainda distingue os meses

    Vlw

Leave a Reply