Foros del Web » Programando para Internet » PHP »

problema con switch

Estas en el tema de problema con switch en el foro de PHP en Foros del Web. hola, esta función con lo simple que es, me está dando un gran problema, por lo menos en mi equipo, no sé en el de ...
  #1 (permalink)  
Antiguo 18/06/2010, 14:26
 
Fecha de Ingreso: agosto-2009
Mensajes: 80
Antigüedad: 15 años, 3 meses
Puntos: 0
problema con switch

hola, esta función con lo simple que es, me está dando un gran problema, por lo menos en mi equipo, no sé en el de ustedes.
El caso es que cuando hago un echo con cualquiera de ellos menos con el 09 me imprime bien. Porque el 09 me imprime el 08 que es el 317 ?
Sera porque es Lucifer??????
Bueno, a ver quien la sabe

function numero($entrada){

switch($entrada) {
case 01: return 311; break;
case 02: return 457; break;
case 03: return 312; break;
case 04: return 303; break;
case 05: return 314; break;
case 06: return 305; break;
case 07: return 316; break;
case 08: return 317; break;
case 09: return 666; break;
case 10: return 319; break;
case 11: return 3010; break;
case 12: return 3111; break;
}
}
$entrada=10;
echo numero($entrada);
  #2 (permalink)  
Antiguo 18/06/2010, 14:31
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: problema con switch

bueno eso ocurre por que php.. por una razon que desconosco.. (tambien javascript) toma mal los valores que empiezan por 0

intentalo asi
Código PHP:
Ver original
  1. function numero($entrada){
  2.  
  3. switch($entrada) {
  4. case 1: return 311; break;
  5. case 2: return 457; break;
  6. case 3: return 312; break;
  7. case 4: return 303; break;
  8. case 5: return 314; break;
  9. case 6: return 305; break;
  10. case 7: return 316; break;
  11. case 8: return 317; break;
  12. case 9: return 666; break;
  13. case 10: return 319; break;
  14. case 11: return 3010; break;
  15. case 12: return 3111; break;
  16. }
  17. }
  18. $entrada=9;
  19. echo numero($entrada);


si quieres verificarlo intentalo

Código PHP:
Ver original
  1. echo 050;
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 18/06/2010, 14:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: problema con switch

No es que tome mal los valores, lo que pasa es que en PHP los valores que empiezan por 0 los toma como valores octales.

Saludos.
  #4 (permalink)  
Antiguo 18/06/2010, 14:35
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: problema con switch

Cita:
Iniciado por GatorV Ver Mensaje
No es que tome mal los valores, lo que pasa es que en PHP los valores que empiezan por 0 los toma como valores octales.

Saludos.
gracias por la info..
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 18/06/2010, 14:45
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, 5 meses
Puntos: 1517
Respuesta: problema con switch

En el manual hay una información en la parte de Enteros, para más detalles.
__________________
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 18/06/2010, 15:14
 
Fecha de Ingreso: agosto-2009
Mensajes: 80
Antigüedad: 15 años, 3 meses
Puntos: 0
De acuerdo Respuesta: problema con switch

Si, es cierto, ya lo probé y funciona. De todas formas ojearé esto de los octales

Chicos, más rápido imposible,

Gracias por su ayuda

Saludos

Etiquetas: switch
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 22:13.