Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/11/2010, 09:58
el-eles
 
Fecha de Ingreso: agosto-2005
Ubicación: Valencia
Mensajes: 76
Antigüedad: 19 años, 6 meses
Puntos: 1
Cosa muy extraña....

Código PHP:
function ejemplo($var=0)
{

echo 
"->>".$var."<--";

if(
$var != 0)
{
//Ejecuta las acciones
}

Como veis es una función muy sencilla. Cuando se llama a la función asi:
Código PHP:
ejemplo() 
Devuelve: '->>0<--'
que se corresponde con el echo antes de la condición y puesto que $var=0, que es el valor predefinido de la variable en la declaración de la función, y como no se pasó valor alguno, toma éste; la condición del if no se cumple porque $var=0. Esto es lo que debe hacer ¿verdad? o al menos es lo que nuestra corta mente espera.

Pues bien a mi me esta ocurriendo que ejecuta todo lo contrario...

Cuando $var=0 la condicion la da como verdadera (pero yo le digo que $var != 0 !!)
Cuando llamo a la función pasándole un valor distinto:
Código PHP:
ejemplo(15
Devuelve: '->>15<--'
En el if devuelve false!!

No entiendo como si una variable antes del IF vale $var=2 y teniendo en IF una condición que es $var != 0 da FALSE

Voy a probar a reiniciar el servidor...

Alguien tiene alguna idea o le ha pasado algo similar??
__________________
Quien a buen árbol se arrima, buena sombra le cobija. :aplauso:

http://dbtrucos.com