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: 15 años, 6 meses
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
}
?>