Foros del Web » Programando para Internet » PHP »

duda con array_keys

Estas en el tema de duda con array_keys en el foro de PHP en Foros del Web. hola gente, tengo los siguiente array y lo que necesito sabes es si la fecha actual o la que yo le indique es el primer ...
  #1 (permalink)  
Antiguo 08/11/2011, 13:08
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
duda con array_keys

hola gente, tengo los siguiente array y lo que necesito sabes es si la fecha actual o la que yo le indique es el primer elemento del array, lo hago de la siguiente forma:

Código PHP:
$fecha_actual "07/11/2011"//date("d/m/Y");

$fecha_menos96hs "03/11/2011"//date('d/m/Y',time()-(4*24*60*60)); // 4 dias
$fecha_menos72hs "04/11/2011"//date('d/m/Y',time()-(3*24*60*60)); // 3 dias
$fecha_menos48hs "05/11/2011"//date('d/m/Y',time()-(2*24*60*60)); // 2 dias
$fecha_menos24hs "06/11/2011"//date('d/m/Y',time()-(24*60*60)); // 1 dia 

deje las fechas estáticas solo para ver si funciona el script, pero no lo hace muy bien ya que detecta la fecha_menos72hs, es decir de hace 3 días, y esa fecha no es el primer elemento de ningún array es el segundo del ultimo.

Código PHP:
if(in_array($fecha_actual$fechas_arr)):
  if(
$indice_array[0] == '0'):
    echo 
"Hay una fecha de hoy \r\n";                    

    
$nombre_cuaderno_mov utf8_encode(substr($nombre_cuaderno,2,-2));
    
$movimiento_por_fecha "True";    
    
$fecha $fecha_actual;
    endif;
endif;

if (
in_array($fecha_menos24hs$fechas_arr)):
if(
$indice_array[0] == '0'):
    echo 
"Hay una fecha de ayer \r\n";

    
$nombre_cuaderno_mov utf8_encode(substr($nombre_cuaderno,2,-2));
    
$movimiento_por_fecha "True";        
    
$fecha $fecha_menos24hs;
endif;
endif;

if (
in_array($fecha_menos48hs$fechas_arr)):
if(
$indice_array[0] == '0'):
    echo 
"Hay una fecha de 2 dias \r\n";               

    
$nombre_cuaderno_mov utf8_encode(substr($nombre_cuaderno,2,-2));
    
$movimiento_por_fecha "True";        
    
$fecha $fecha_menos48hs;
endif;
endif;

if (
in_array($fecha_menos72hs$fechas_arr)):
if(
$indice_array[0] == '0'):
    echo 
"Hay una fecha de 3 dias \r\n";               

    
$nombre_cuaderno_mov utf8_encode(substr($nombre_cuaderno,2,-2));
    
$movimiento_por_fecha "True";        
    
$fecha $fecha_menos72hs;
endif;
endif;

if (
in_array($fecha_menos96hs$fechas_arr)):
if(
$indice_array[0] == '0'):
    echo 
"Hay una fecha de 4 dias \r\n";               

    
$nombre_cuaderno_mov utf8_encode(substr($nombre_cuaderno,2,-2));
    
$movimiento_por_fecha "True";        
    
$fecha $fecha_menos96hs;
endif;
endif;
 
Array
(
    [
0] => 13/10/2011
    
[1] => 13/10/2011
    
[2] => 02/06/2011
    
[3] => 24/05/2011
    
[4] => 23/05/2011
    
[5] => 19/05/2011
    
[6] => 18/05/2011
)
Array
(
    [
0] => 27/09/2011
    
[1] => 27/09/2011
    
[2] => 26/09/2011
    
[3] => 23/09/2011
    
[4] => 22/09/2011
    
[5] => 12/09/2011
    
[6] => 12/09/2011
    
[7] => 10/09/2011
    
[8] => 24/06/2011
    
[9] => 23/06/2011
)
Array
(
    [
0] => 07/11/2011
    
[1] => 04/11/2011
    
[2] => 07/10/2011
    
[3] => 06/10/2011
    
[4] => 05/10/2011

muchas gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #2 (permalink)  
Antiguo 08/11/2011, 13:11
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: duda con array_keys

Para saber el indice del array de un elemento, debes de usar array_search.

Saludos.
  #3 (permalink)  
Antiguo 08/11/2011, 13:23
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: duda con array_keys

gracias por el dato, pero tengo un inconveniente, cuando agregue el code:

Código PHP:
               
               
if(array_search('07/11/2011'$fechas_arr) == '0'):
                   echo 
"existe la fecha en el segundo elemento del array \r\n"
               endif; 
el codigo de las fechas esta dentro de un bucle que itera segun la cantidad de arrays con fechas existan, y al ejecutar este code, me imprime el echo 3 veces... y deberia ser solo una ya que la fecha se encuentra solamente en el 3º array....

gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #4 (permalink)  
Antiguo 08/11/2011, 14:07
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: duda con array_keys

Si tu key es numérico deberías de comparar numericamente, aparte de que te recomiendan usar === ya que al comparar con 0 se puede evaluar como false.

Saludos.
  #5 (permalink)  
Antiguo 08/11/2011, 17:22
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: duda con array_keys

ok, ya lo solucione, muchas gracias.!!!
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
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 15:23.