Foros del Web » Programando para Internet » PHP »

trabajo con fechas

Estas en el tema de trabajo con fechas en el foro de PHP en Foros del Web. Buenas tardes maestros. La duda a la que me refiero es la siguiente. en una consulta obtengo 2 variables ($factor, $tiempo) en tipo time y ...
  #1 (permalink)  
Antiguo 20/06/2011, 14:50
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
trabajo con fechas

Buenas tardes maestros.

La duda a la que me refiero es la siguiente.

en una consulta obtengo 2 variables ($factor, $tiempo) en tipo time y no se si pe podrian ayudar a la siguiente logica ya que no he podido dar con ella


ejemplo;

Código PHP:
Ver original
  1. $factor = '01:00:00';
  2. $time ='04:30:00';
  3.  
  4. // y quisiera me como resultado me arrojara 4.5

eh intentado con las funciones strtotime pero nada y no se que mas puedo usar.

Espero alguien pueda ayudarme

Saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #2 (permalink)  
Antiguo 20/06/2011, 15:01
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: trabajo con fechas

podrías separarlas con explode y usar mktime
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 20/06/2011, 15:04
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: trabajo con fechas

¿Algo así?
Código PHP:
Ver original
  1. <?php
  2. $time = '04:30:00';
  3. $e = explode(':', $time);
  4. echo $e[0] + ($e[1] / 60);
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #4 (permalink)  
Antiguo 20/06/2011, 15:08
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: trabajo con fechas

Cita:
Iniciado por abimaelrc Ver Mensaje
¿Algo así?
Gracias por contestar a ambos pero tomando en cuenta que la variable factor cabia continuamente ¿Como podria hacerlo ?
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #5 (permalink)  
Antiguo 20/06/2011, 15:11
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: trabajo con fechas

Pero si los datos siempre van a ser los mismos. O sea primer renglon $e[0] representa la hora y segundo renglon $e[1] los minutos, lo divides entre 60 porque son los minutos y ahí tienes el porciento que representa. ¿Lo haz tratado con otros valores y no te da el resultado?
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #6 (permalink)  
Antiguo 20/06/2011, 15:19
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: trabajo con fechas

Cita:
Iniciado por abimaelrc Ver Mensaje
Pero si los datos siempre van a ser los mismos. O sea primer renglon $e[0] representa la hora y segundo renglon $e[1] los minutos, lo divides entre 60 porque son los minutos y ahí tienes el porciento que representa. ¿Lo haz tratado con otros valores y no te da el resultado?
A lo que me refiero es que la variables dependen una de la otra como si fuera una regla de 3.


$factor='00:50:00'; es igual a 1
$time='05:45:00'; es igual a X

no se si me explico Saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #7 (permalink)  
Antiguo 20/06/2011, 15:34
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: trabajo con fechas

No te entiendo.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #8 (permalink)  
Antiguo 20/06/2011, 15:36
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: trabajo con fechas

Cita:
Iniciado por abimaelrc Ver Mensaje
No te entiendo.
+ igual, no te entiendo
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #9 (permalink)  
Antiguo 20/06/2011, 16:04
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: trabajo con fechas

Cita:
Iniciado por maycolalvarez Ver Mensaje
+ igual, no te entiendo
A lo que me refiero es lo siguiente.

la variable $factor independientemente de su valor para mi es ugual a 1.

la variable $time se podria decir es un multiplo de la variable $factor.

y la operacion que deseo realizar es la siguiente.

$result = ($time * 1) / $factor;

no se si me explico, un ejemplo con numeros


$factor=2;
$time=5;

$result = ($time * 1) / $factor;

y como resultado seria 2.5 espero ahora si explicarme bien y gracias por su ayuda

Saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #10 (permalink)  
Antiguo 20/06/2011, 16:10
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: trabajo con fechas

Pues, solo es colocar el factor a la ecuación, del que yo te di.
Código PHP:
Ver original
  1. <?php
  2. $factor = 2;
  3. $time = '05:00:00';
  4. $e = explode(':', $time);
  5. echo ($e[0] + ($e[1] / 60)) / $factor;
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #11 (permalink)  
Antiguo 20/06/2011, 17:05
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 12 años, 10 meses
Puntos: 32
Respuesta: trabajo con fechas

abimaelrc, creo que su problema es que lo que quiere es hallar ese factor.

pero reutilizaré tu código para llevarme la gloria MWAJAJAJAJAJA:

Código PHP:
$factor '01:00:00';
$time '05:00:00';
$e explode(':'$time);
$tiempo $e[0] + ($e[1] / 60);
$f explode(':'$factor)
$fac $f[0]+ ($f[1] / 60);

$resul $tiempo/$fac
Si te entendí bien, es eso lo que buscas (o al menos una solución).
  #12 (permalink)  
Antiguo 20/06/2011, 17:32
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: trabajo con fechas

Cita:
Iniciado por solhdeck Ver Mensaje
abimaelrc, creo que su problema es que lo que quiere es hallar ese factor.

pero reutilizaré tu código para llevarme la gloria MWAJAJAJAJAJA:

Código PHP:
$factor '01:00:00';
$time '05:00:00';
$e explode(':'$time);
$tiempo $e[0] + ($e[1] / 60);
$f explode(':'$factor)
$fac $f[0]+ ($f[1] / 60);

$resul $tiempo/$fac
Si te entendí bien, es eso lo que buscas (o al menos una solución).
Excelente funciono de maravilla y gracias a los 2
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125

Etiquetas: fechas, trabajo
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 14:08.