Foros del Web » Programando para Internet » PHP »

Intervalo de HORAS en PHP

Estas en el tema de Intervalo de HORAS en PHP en el foro de PHP en Foros del Web. Hola, amigos ... tengo una dudota, la cual es: Si yo quiero que mi programa me habilite o deshabilite cierta funcionamiento en algun intervalo de ...
  #1 (permalink)  
Antiguo 29/11/2010, 09:00
 
Fecha de Ingreso: octubre-2010
Mensajes: 350
Antigüedad: 9 años, 2 meses
Puntos: 9
Exclamación Intervalo de HORAS en PHP

Hola, amigos ... tengo una dudota, la cual es:

Si yo quiero que mi programa me habilite o deshabilite cierta funcionamiento en algun intervalo de timepo como le hago, ya que yo tengo algo asi, pero no funciona los intervalos son:

primer turno (6am. - 2pm.)
segundo turno (2pm. - 10pm.)
tercer turno (10pm. - 6am.)

Código PHP:
$tipoturno=0;
      if(
date(g)>=and (date(G)<=13 and date(i)<=59 and date(s)<=59)) {  $tipoturno=1; echo "<br>Correspondiente al <b>'</b><font color='green'>PRIMER TURNO</font><b>'</b>";} 
      if(
date(G)>=14 and (date(G)<=21 and date(i)<=59 and date(s)<=59)) { $tipoturno=2; echo "<br>Correspondiente al <b>'</b><font color='green'>SEGUNDO TURNO</font><b>'</b>";} 
      if(
date(G)>=22 and (date(g)>=and date(i)<=59 and date(s)<=59)) { $tipoturno=3; echo "<br>Correspondiente al <b>'</b><font color='green'>TERCER TURNO</font><b>'</b>";} 
pero esto no funciona debido a que en el and ( .... ) obviamente el date(g) es la hora actual y por ende no concide con el tiempo que comparo, pero la verdad no se que funcion o algo que me permita manejar intervalos de timepos como le hago:S

gracias saludos!
  #2 (permalink)  
Antiguo 29/11/2010, 09:10
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 9 años, 10 meses
Puntos: 55
Respuesta: Intervalo de HORAS en PHP

Código PHP:
<?php
if(date("H:i:s") > "06:00:00" AND date("H:i:s") < "14:00:00"){
    
$turno "xxx";
}
elseif ...
?>
  #3 (permalink)  
Antiguo 29/11/2010, 09:11
 
Fecha de Ingreso: noviembre-2010
Mensajes: 13
Antigüedad: 9 años
Puntos: 0
Respuesta: Intervalo de HORAS en PHP

Hola te dejo una funcion que uso yo, quizas puedas adaptarla a tus nececidades

Código PHP:
function RestarHoras($horaini,$horafin){
$horai=substr($horaini,0,2);
$mini=substr($horaini,3,2);
$segi=substr($horaini,6,2);
$horaf=substr($horafin,0,2);
$minf=substr($horafin,3,2);
$segf=substr($horafin,6,2);
$ini=((($horai*60)*60)+($mini*60)+$segi);
$fin=((($horaf*60)*60)+($minf*60)+$segf);
$dif=$fin-$ini;
$difh=floor($dif/3600);
$difm=floor(($dif-($difh*3600))/60);
$difs=$dif-($difm*60)-($difh*3600);
return 
date("H:i:s",mktime($difh,$difm,$difs));
}
$horainidate("H:i:s");
$horafin="00:00:00"
echo 
"Diferencia : ".RestarHoras($horaini,$horafin)."<br/>"
  #4 (permalink)  
Antiguo 29/11/2010, 09:12
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 10 años, 6 meses
Puntos: 1517
Respuesta: Intervalo de HORAS en PHP

Solo es cuestión de convertirlo a Unix timestamp y comparar con la hora actual, algo así
Código PHP:
Ver original
  1. <?php
  2. date_default_timezone_set("America/Puerto_Rico"); //El lugar donde vives
  3. $inicio = mktime(10, 0, 0);
  4. $final = mktime(14, 0, 0);
  5. if(time() >= $inicio && time() <= $final){
  6.     echo 'algo';
  7. }
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 29/11/2010, 09:53
 
Fecha de Ingreso: octubre-2010
Mensajes: 350
Antigüedad: 9 años, 2 meses
Puntos: 9
Respuesta: Intervalo de HORAS en PHP

Gracias a todos!

Death_Empire Voy a probar tu propuesta, ahorita esta funcionando bien, lo probare con los demas horarios saludos! y gracias nuevamente a todos

Etiquetas: horas, intervalo
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 07:00.