PHP: Convertir Minutos a Horas y Minutos (0:00)
Pregunta de Invitado | 10/01/2024 a las 11:41
En uno de mis scripts PHP, tengo un valor de tiempo especificado en minutos. Me gustaría mostrar este valor en mi sitio web en la forma horas:minutos. Así, por ejemplo, "1:37 horas" en lugar de "97 minutos".
Eso significa que necesito alguna función que pueda transformar el valor de los minutos al formato h:min. ¿Existe alguna función disponible en PHP para dicha conversión? Preferiblemente, lo más simple posible.
Temas Relacionados
MySQL: Saltos de Línea en MySQL
Consejo | 0 Comentarios
Script Batch: Apagar Computadora Windows
Tutorial | 2 Comentarios
Convertir muchos Archivos CSV a Hojas de Cálculo XLSX u ODS
Tutorial | 0 Comentarios
Convertir los Valores de Color RGB, CMYK, CMY, HSV, TColor y XYZ
Tutorial | 0 Comentarios
Reescribir Archivos de Texto con una Longitud de Línea Fija
Tutorial | 0 Comentarios
Delphi/Lazarus: Mostrar Fecha y Hora actuales
Consejo | 0 Comentarios
PHP: Determinar el Número de Semana
Tutorial | 1 Comentario
Aviso Importante
Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.
Participar
Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.
Puede utilizar una combinación de las funciones PHP date() y mktime() para esta conversión.
Por ejemplo, de esta manera:
Como primer parámetro, mktime() toma el número de horas, como segundo parámetro (opcional) los minutos; después de eso segundos, meses, días y años.
Cuando se llama a mktime() con mktime(0, 97), esto corresponde a 0 horas y 97 minutos, que se pueden salir en un formato personalizado usando date(). Al usar la cadena de formato "G:i" obtendrá "1:37", con "H:i" "01:37", como ejemplo.
Por supuesto, también puede pasar el número de segundos [mktime(0, 0, 120) = 120 segundos] o puede mezclar los argumentos [mktime(1, 2, 3) = 1 hora, 2 minutos y 3 segundos]. Del mismo modo, también puede utilizar todos los demás caracteres en su cadena de formato (por ejemplo, "s" para segundos con ceros a la izquierda, etc.).
10/01/2024 a las 21:06
Alternativamente, también puede usar la función sprintf() para obtener el mismo resultado.
Aquí hay un ejemplo:
Pasamos a esta función la cadena de formato así como los valores que deben reemplazarse en la cadena.
Aquí, en las cadenas de formato usamos %d para valores enteros simples y %02d para valores enteros que se generarán con dos dígitos usando ceros a la izquierda.
Como valores, pasamos floor($t/60) y $t%60. Con dividir por 60 y recortar los decimales, obtenemos el número de horas. En consecuencia, extraemos el resto de la división calculando $t%60 para obtener el número de minutos con esto.
10/01/2024 a las 22:08