Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/03/2014, 11:14
Avatar de catpaw
catpaw
 
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años
Puntos: 23
La funcion date_diff

Hola forer@s del web

Necesito su ayuda como siempre, necesito sacar de dos fechas dadas el numero de meses que trascurren en ese rango, para lo cual tengo el siguiente codigo:

Código PHP:
$datetime1 date_create('2013-01-01');
$datetime2 date_create('2014-01-01');
$interval date_diff($datetime1$datetime2);
echo 
"meses ".$meses = ($interval->y*12)+$interval->m
Por ejemplo ese caso me da 12 meses, con lo cual estoy de acuerdo es un año cumplido, pero para los siguientes casos no estoy de acuerdo con el resultado:

Por ejemplo:

Cuantos meses pasaron entre 2013-01-01 y 2013-08-31, veamos

Enero -> 1
Febrero -> 2
Marzo -> 3
Abril -> 4
Mayo -> 5
Junio -> 6
Julio -> 7
Agosto -> 8 (Cuento todo el mes de agosto por que es hasta el dia 31)

Segun yo son 8 meses

Pero la funcion me da 7

Otro caso y con ese mismo criterio

Entre la fecha 2013-01-01 y 2013-12-31 para mi ha pasado un año pero la funcion me devuelve 11 meses.

No se si me estoy perdiendo algo en la funcion o que otra alternativa puedo ocupar para obtener los meses con el criterio que necesito?

Gracias de Antemano