Foros del Web » Programando para Internet » PHP »

Calculo del total de horas trabajadas

Estas en el tema de Calculo del total de horas trabajadas en el foro de PHP en Foros del Web. Saludos!!! Estoy tratando de calcular el numero total de horas trabajadas por un empleado, por lo que tengo la siguiente funcion: Código: public function horasTrabajadas($array) ...
  #1 (permalink)  
Antiguo 15/09/2010, 09:33
Avatar de germana  
Fecha de Ingreso: abril-2007
Mensajes: 61
Antigüedad: 17 años, 1 mes
Puntos: 0
Calculo del total de horas trabajadas

Saludos!!!

Estoy tratando de calcular el numero total de horas trabajadas por un empleado, por lo que tengo la siguiente funcion:

Código:
 public function horasTrabajadas($array)
   {
      $horas = mktime(0,0,0);

      for($i=0; $i < count($array); $i++)
      {
         $trabajo = parent::formatoMkTime($array[$i]["horas_trabajadas"]);
         $horas += $trabajo;
      }
      return $horas;
   }
El array lo que contiene es el resultado de la conculta de una tabla donde se guarda las horas trabajadas por dia. Entonces lo que hago es sumarlas todas, EL PROBLEMA es que al usar la funcion date("H", $horas) no me muestra el nuemero de horas correcta ya que date es de '0 a 23'.

Existe alguna funcion de php que muestre el numero correcto de horas? o tengo que sumar horas y minutos a "mano" ???

Gracias
  #2 (permalink)  
Antiguo 15/09/2010, 10:22
Avatar de Perr0  
Fecha de Ingreso: mayo-2005
Ubicación: Santiago de Chile, Chile
Mensajes: 676
Antigüedad: 19 años
Puntos: 79
Respuesta: Calculo del total de horas trabajadas

Código:
<?
//formato horas:minutos
$horas_mes[]="8:00";
$horas_mes[]="8:00";
$horas_mes[]="8:00";
$horas_mes[]="9:00";
$horas_mes[]="8:15";
$horas_mes[]="8:00";
$horas_mes[]="8:32";
foreach($horas_mes as $i=>$res){
	$li=$i+1;
	print "$li) $res<br>";
	$totalhoras+=ht($res);
}
function ht($hora){
	list($h,$m)=explode(":",$hora);
	$resultado=mktime($h,$m,0,0,0,0)-mktime(0,0,0,0,0,0);
	return $resultado;
}
$convhora=intval($totalhoras/3600).":".($totalhoras%3600)/60;
print "<h3>total minutos: $totalhoras<br>en horas: $convhora</h3>";
?>
salu2
  #3 (permalink)  
Antiguo 15/09/2010, 10:30
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Calculo del total de horas trabajadas

Trata con el método diff y format de la clase DateTime.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: calculo, horas, totales
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:43.