Ver Mensaje Individual
  #7 (permalink)  
Antiguo 18/09/2009, 10:51
Avatar de rudy69
rudy69
 
Fecha de Ingreso: octubre-2008
Ubicación: espndeportes.com
Mensajes: 195
Antigüedad: 18 años
Puntos: 7
Respuesta: no entiendo comparacion ==, operador logico

Si tenes razon, he dado con el clavo, la solucion es

Código PHP:
<?php ((string)$_value == (string)$_REQUEST['cosa'])?>
forzando ambos a ser un string, un tanto confuso y dificil de detectar un error asi, me tome la tarea de verificar con certeza que pasaba y realice unos ejemplos, ahi van:

Código PHP:
<?php 
$text 
= 'holaaaaaa'; //es string
$text1 = 'hola'; //es string
if($text == $text1) {
    echo 
'ejemp1: son iguales<br>'; //no son iguales
}

$num = 1234; //es int
$num1 = '1234,123'; //es string
if($num1 == $num) {
    echo 
'ejemp2: son iguales<br>'; //php dice que son iguales porque 
                                    //forza a ser int $num1 y solo toma 1234
}

$text2 = 'holaaaaaa';
$text3 = 'hola';
if(
$text2 === $text3) {
    echo 
'ejemp3: son iguales<br>'; //no son iguales
}

$num2 = 1234;
$num3 = '1234';
if(
$num2 === $num3) {
    echo 
'ejemp4: son iguales<br>'; //no son iguales, el operador === verifica primero el tipo, 
                                    //uno es int el otro string, aunque a primera vista a 
                                    //nosotros nos parecen iguales, no lo es
}
?>