PHP - Horario laboral

 
Vista:

Horario laboral

Publicado por Diego Forero (27 intervenciones) el 20/05/2019 17:22:48
Hola amigos, un favor alguno me podría indicar una idea de cómo hacer lo siguiente

Tengo la hora de entrada 8:00 al y salida 6:00 pm necesito sacar la suma de las horas de trabajo que serían 10 horas quitarle 1 que es la de almuerzo y sumar esa cantidad de horas a la semana, si entra media hora más temprano o sale media hora más tarde saber qué día lo hizo y guardar ese tiempo en otra variable.. para el pago de horas extras, alguna idea... Tengo un PHP que me encontré en internet para validar si es un día festivo o no.
El objetivo es contar la horas trabajadas y saber las horas extras por día y el total de las mismas...

Gracias..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Horario laboral

Publicado por joel (1269 intervenciones) el 20/05/2019 18:14:24
Hola Diego, yo trabajaria con la fecha entera y en formato 24 horas... algo así:
Hora inicio: 2019-05-20 08:00:00
Hora salida: 2019-05-20 18:00:00

De esta manera, puedes hacer la resta y no tendrás problemas si un usuario hace turno de noche...
1
2
3
4
5
6
<?php
$inicio="2019-05-20 08:00:00";
$final="2019-05-20 18:00:00";
 
$segundos=strtotime($final)-strtotime($inicio); // 36000
$horas=$segundos/3600; // 10

Te sirve?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Horario laboral

Publicado por Mauro (1037 intervenciones) el 20/05/2019 18:39:27
Yo te recomendaría trabajar con objetos DateTime.

Respecto de:

si entra media hora más temprano o sale media hora más tarde saber qué día lo hizo

Para esto vas a necesitar alguna especie de base de datos más algún sistema que registre, por cada empleado (?) su horario de entrada y salida y vea eso que decís de los festivos... en fin, es un poco amplio el tema.

¿Tenés algún problema en particular?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Horario laboral

Publicado por Diego Forero (27 intervenciones) el 20/05/2019 19:42:31
Pues así un problema en particular no, más bien es que no sé de qué manera hacerlo , yo lo estoy manejando haciendo que tomo el campo completo con fecha y hora le quitó la fecha y los puntos y lo trabajo como números enteros pero no veo que así sea como tan efectivo, entonces quiero poder llegar a la mejor forma de hacerlo para no fallar, porque de igual forma debo saber las horas que sobran para determinar extras, independiente del día, para generar una tabla al final indicando hora de entrada, de salida, si hizo hora extra o no, si es festivo también saber cuántas horas, y como aparte eso de las extras se divide en diurnas y nocturnas, estoy como algo perdido en la idea de cómo hacerlo.

Es una tabla con varios campos que me discrimina cada hora a qué equivale y cuántas se hicieron.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Horario laboral

Publicado por Mauro (1037 intervenciones) el 21/05/2019 15:07:11
Ah, entiendo... Bueno, lo que podés hacer es manejarte con dos campos diferentes, uno que guarde la fecha y otro la hora y del lado de PHP manejarte con objetos DateTime.

Igualmente, me parece que lo mejor sería guardar fechas completas (Que incluyan hora) y dejar que la aritmética de las fechas las maneje el sistema... Imaginate qué podría pasar si alguien trabaja de noche... entrando a las 10 PM y saliendo a las 6 AM...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Horario laboral

Publicado por Diego Forero (27 intervenciones) el 21/05/2019 17:21:42
La forma de Joel me dió una idea, encontré una clase que me dice que día es y no festivo y una función que me arroja el día de la semana, separe así como me dice mauro la hora y la fecha, y luego la hora la separe también en horas minutos de esta forma me permite controlar el tiempo porque en el caso que trabajaran 1 hora y 40 min eso serían 2 horas extras partiendo que 1 hora extrase considera a partir de 30 min ... Ya de ahí lo que tengo pensado es condicionar para que dependiendo el día de la semana y si es festivo o no obtener el número de horas, tal vez salgan cosas más adelante por ahora muchas gracias por los comentarios y aportes, los estaré molestando ..... Gracias ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Horario laboral

Publicado por Mauro (1037 intervenciones) el 22/05/2019 16:10:36
Comenta por favor cuál es la clase que te dice lo de los festivos... seguramente a otros les ayude también.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar