Fecha y hora actual: Miércoles 14 Nov 2018 00:40
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

automatizar formato de fecha

Responder al Tema

Índice del Foro > PHP > automatizar formato de fecha

Autor Mensaje
joserodriguezan



Registrado: 09 Nov 2013
Mensajes: 9

Mensaje Publicado: Sábado 20 Ene 2018 10:52

Título del mensaje: automatizar formato de fecha

Responder citando

Buenos días a todos,

Estoy intentando crear un código para que de forma automática indique la diferencia de tiempo entre una fecha y la actual. Por ejemplo:

Si la diferencia es menor a 1 mes que muestre los días. "dias"
Si es igual a un mes que muestre "mes"
Si es >= a 2 y menor o <= 12 que muestre "meses"
Y si es superior a 12 meses pero igual a un año, que muestre "año"
Y si es superior a un año que muestre "años"

Os pongo el código que tengo hecho, pero me falla en años que marca 0 mes.

Alguien podría ayudarme con esto.

Muchas gracias,





Código:
<?php

 
//Calcular fechas

function calcular_fecha($fecha){

$fecha_select = new DateTime(date('Y/m/d',strtotime($fecha))); // Creo un objeto DateTime de la fecha ingresada

$fecha_hoy =  new DateTime(date('Y/m/d',time())); // Creo un objeto DateTime de la fecha de hoy

// La funcion ayuda a calcular la diferencia, esto seria un objeto

 

$Actual = date_diff($fecha_hoy,$fecha_select);

 

return $Actual;

}

 

function dias_totales($fecha_i)

{

     $dias   = (strtotime($fecha_i)-time())/86400;

   $dias    = abs($dias); $dias = floor($dias);

   return $dias;

}

$Edad = calcular_fecha('1972-11-20');

$Experiencia = calcular_fecha('2002-10-20');

$Laboral = calcular_fecha('1990-02-01');

 

//Cambiar las dos fechas de $Actual y Actualdays para automatizar

$Actual = calcular_fecha('2016-01-08');

$Actualmes = $Actual->format('%m');

$Actualdays = dias_totales('2016-01-08');

?>

<html>

 

<?php

if ($Actualdays <= 30) {

  echo $Actualdays." días";

 

   }   elseif ($Actualmes <= 1){

   echo $Actual->format('%m')." mes";

 

   }   elseif ($Actualmes >= 2 && $Actualmes <= 12){

   echo $Actual->format('%m')." meses";

 

   }   elseif ($Actualdays > 365){

   echo $Actual->format('%Y')." años";

}

 

?>

 

</html>

Volver arriba
Ver perfil del usuario Enviar mensaje privado
joserodriguezan



Registrado: 09 Nov 2013
Mensajes: 9

Mensaje Publicado: Lunes 22 Ene 2018 09:11

Título del mensaje: automatizar formato de fecha

Responder citando

Solucionado creando otra variable. y elimando otras dos.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Tesis
Administrador


Registrado: 04 Mar 2007
Mensajes: 3192
Ubicación: Valencia - España

Mensaje Publicado: Martes 23 Ene 2018 19:24

Título del mensaje: automatizar formato de fecha

Responder citando

joserodriguezan escribió:
Solucionado creando otra variable. y elimando otras dos.
Ok Ok


Normas del foro
Aprende a postear correctamente usando las etiquetas
Volver arriba
Ver perfil del usuario Enviar mensaje privado
Responder al Tema
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 2 Horas

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

Guardar resultado ASP en formato XML

Registros_r2 ASP, ASP.NET 0 Lunes 15 Ene 2018 15:56 Ver último mensaje
El foro no contiene ningún mensaje nuevo

nsertar Montos segun fecha de couta en un calen...

djnilo Excel 1 Jueves 24 Sep 2015 17:41 Ver último mensaje
El foro no contiene ningún mensaje nuevo

crear un slide que además de imágenes, pase hor...

danimx Programación en general 1 Miércoles 17 Dic 2014 12:42 Ver último mensaje
El foro no contiene ningún mensaje nuevo

calculo del mes con la fecha de nacimiento

zendit JavaScript 7 Miércoles 12 Nov 2014 13:48 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Problema de Fecha y año bisiesto.

AdrianEsau_java Java 0 Sábado 13 Sep 2014 23:31 Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,