Foros del Web » Programando para Internet » PHP »

uso de IF?

Estas en el tema de uso de IF? en el foro de PHP en Foros del Web. Hola, si no he entendido mal el funcionamiento de IF si la condicion no se cumple no ejecuta la sentencia! no? Su sintaxis es : ...
  #1 (permalink)  
Antiguo 13/06/2003, 13:51
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
uso de IF?

Hola,
si no he entendido mal el funcionamiento de IF si la condicion no se cumple no ejecuta la sentencia! no?
Su sintaxis es :
if (expresion)
{
setencia1;
}
Yo tengo la siguiente expresion:

if ($mes = 01)
{
$mes2 = "Enero";
}
if ($mes = 02)
{
$mes2 = "Febrero";
}
if ($mes = 03)
{
$mes2 = "Marzo";
}

PQ $mes2 siempre acaba teniendo el ultimo valor?
Un saludo
  #2 (permalink)  
Antiguo 13/06/2003, 14:07
Avatar de camargo  
Fecha de Ingreso: abril-2002
Ubicación: Kerétaro, Méjiko
Mensajes: 1.045
Antigüedad: 22 años
Puntos: 2
prueba con

Código PHP:
if($mes=01)
{
$mes2 ="Enero";
} else 
if(
$mes=02)
{ else {
$mes2 "Febrero";
} else {
$mes2 "Marzo";

O bien utiliza arrays !

Salu2
__________________
http://www.chorcha.com
  #3 (permalink)  
Antiguo 13/06/2003, 14:22
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Camargo no funciona.
Los parentesis estan bien puestos?
  #4 (permalink)  
Antiguo 13/06/2003, 14:25
Avatar de camargo  
Fecha de Ingreso: abril-2002
Ubicación: Kerétaro, Méjiko
Mensajes: 1.045
Antigüedad: 22 años
Puntos: 2
si,, jeje,, es q la cague..xDD,,ando algo pedon x eso no coordino... jeje.. aki esta el kodigo:

Código PHP:
if($mes==01){
$mes2 ="Enero";
} else if(
$mes==02){
$mes2 "Febrero";
} else {
$mes2 "Marzo";

Prueba asi jeje
__________________
http://www.chorcha.com

Última edición por camargo; 13/06/2003 a las 14:54
  #5 (permalink)  
Antiguo 13/06/2003, 14:29
Avatar de mdk
mdk
 
Fecha de Ingreso: noviembre-2002
Mensajes: 531
Antigüedad: 21 años, 5 meses
Puntos: 11
La correcta utilización para que hiciera comparación de igualdad es con 2 iguales, si se pone solo uno es asignación. El código quedaria asi:

Código PHP:
if ($mes == 01) { $mes2 "Enero"; }
elseif (
$mes == 02) { $mes2 "Febrero"; }
elseif (
$mes == 03) { $mes2 "Marzo"; } 
__________________
SoY Lo Ke VeS iNKLuSo KuAnDo No Me VeS ;)
  #6 (permalink)  
Antiguo 13/06/2003, 14:29
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

En PHP = asigna valor, == es para comparar igualdad de valor, === es para comparar igualdad de valor y tipo.

Es decir, tu codigo seria:
Código PHP:
 if ($mes == 01)
{
$mes2 "Enero";
}
if (
$mes == 02)
{
$mes2 "Febrero";
}
if (
$mes == 03)
{
$mes2 "Marzo";

Ademas, siendo numeros a PHP le da igual que sea 03 que 3, y si son cadenas tendrias que poner '03'. Yo acostumbro a poner if (3==$mes) porque si me equivoco al teclear y pongo if (3=$mes) PHP pone error.

Y hay formas mas faciles de hacer lo que hace ese codigo. Como te ha dicho Carmago puedes usar un array. Y tambien podrias echar un vistado a la sentencia switch.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 13/06/2003, 14:45
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Gracias Josemi ahora si me funciona.
Ahora intentare hacerlo con un array. Me tenia preocupado que un codigo tan simple no funcionara.

Un saludo
  #8 (permalink)  
Antiguo 13/06/2003, 14:57
Avatar de camargo  
Fecha de Ingreso: abril-2002
Ubicación: Kerétaro, Méjiko
Mensajes: 1.045
Antigüedad: 22 años
Puntos: 2
Código PHP:
$diasSemana[0] = "domingo";
$diasSemana[1] = "lunes";
$diasSemana[2] = "martes";

$mesesAnho[1] = "enero";
$mesesAnho[2] = "febrero";
$mesesAnho[3] = "marzo";

$diaSemana date(w);
$diaMes date(j);
$mesAnho date(n);
$anho date(Y);

$fecha $diasSemana[$diaSemana]." ".$diaMes." de ".$mesesAnho[$mesAnho]." del ".$anho."; 
Aki se utilizan los arrays..
;)

Salu2
__________________
http://www.chorcha.com
  #9 (permalink)  
Antiguo 13/06/2003, 16:07
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Se puede usar como indice del array una variable?

Retiro la pregunta!
Evidentemente se tiene que llamar el indice del array con el valor de una variable, sino no tiene sentido usar un array.

Es mas facil y mas corto usar un array que el condicional IF.
Gracias por vuestra ayuda.

Mi codigo queda asi


Código:
    $meses["01"] = "Enero";
    $meses["02"] = "Febrero";
    $meses["03"] = "Marzo";
    $meses["04"] = "Abril";
    $meses["05"] = "Mayo";
    $meses["06"] = "Junio";
    $meses["07"] = "Julio";
    $meses["08"] = "Agosto";
    $meses["09"] = "Setiembre";
    $meses["10"] = "Octubre";
    $meses["11"] = "Noviembre";
    $meses["12"] = "Diciembre";
    $mes2= $meses[$mes];
Para los novatos como yo aclaro que los indices del array estan entre comillas (" ") porque uso un array asociativo no un array enumerado.
La variable mes la recojo de un formulario.

Gracias a todos por vuestro interes.
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 23:28.