Hola, quisiera saber la diferencia de meses que hay entre 2 fechas, sabiendo que hay meses que tienen solo 30 dias o 28 en caso de febrero.
Tengo esta funcion, pero no me valida los dias 30 ni 28.
<?php
function resta_fechas($fecha1,$fecha2)
{
if (preg_match("/[0-9]{1,2}\/[0-9]{1,2}\/([0-9][0-9]){1,2}/",$fecha1))
list($dia1,$mes1,$año1)=split("/",$fecha1);
if (preg_match("/[0-9]{1,2}-[0-9]{1,2}-([0-9][0-9]){1,2}/",$fecha1))
list($dia1,$mes1,$año1)=split("-",$fecha1);
if (preg_match("/[0-9]{1,2}\/[0-9]{1,2}\/([0-9][0-9]){1,2}/",$fecha2))
list($dia2,$mes2,$año2)=split("/",$fecha2);
if (preg_match("/[0-9]{1,2}-[0-9]{1,2}-([0-9][0-9]){1,2}/",$fecha2))
list($dia2,$mes2,$año2)=split("-",$fecha2);
$dif = mktime(0,0,0,$mes1,$dia1,$año1) - mktime(0,0,0,$mes2,$dia2,$año2);
$ndias=floor($dif/(24*60*60));
$nmeses=floor($dif/(30*24*60*60));
return($nmeses);
}
echo '<head>
<title>'.$_SERVER[PHP_SELF].'</title>
</head>
<html>
<body>';
$f1="10/07/2006";
$nummeses=resta_fechas(date("d/m/Y"),$f1);
//echo "Desde $f1 hasta hoy han transcurrido $nummeses<br>";
echo "<a href=$_SERVER[PHP_SELF]>Recargar la Página</a>";
echo '</body>
</html>';
?>
Gracias de antemano