From:             angeli at faccat dot br
Operating system: Windows XP
PHP version:      5.2CVS-2009-01-17 (CVS)
PHP Bug Type:     Unknown/Other Function
Bug description:  Bug ==

Description:
------------
Brazil - Português

Não realiza a igualdade.
Tenho um array serializado que busco na sessão, quando realizo uma
comparação de um nodo do array com uma string está retornando como se fosse
igual, mas não são iguais (==).

O valor do array é 0 (zero) do tipo integer, e quando faço uma comparação
(==) com uma string retorna true. Se faço a comparação com inteiro realiza
corretamente a validação.

Se eu realizo um trim() no array e faço a igualdade, ai realiza
corretamente. Fiz um strlen() no array e o tamanho é 1.

Se faço igualdade (===) a comparação está certa.

Reproduce code:
---------------
//array vindo da session, unserialize($_SESSION['menu'])
Array
(
    [menu_2008311143334693] => Array
        (
            [ordenador] => 0
            [id] => 2008311143334693
            [parentId] => 2008311143334693
            [label] => Relatórios
            [action] =>  
            [help] => 
            [imagem] => 
            [filhos] => Array
                ( ....
                    
echo
strlen($menuPermissaoUser['menu_2008311143334693']['ordenador']).'<br>';
                        echo
gettype($menuPermissaoUser['menu_2008311143334693']['ordenador']).'<br>';
                        echo 
$menuPermissaoUser['menu_2008311143334693']['ordenador'].'<br>';
                        
if($menuPermissaoUser['menu_2008311143334693']['ordenador'] ==
'qualquer coisa')
                                echo'IGUAL<br>';
                        
                        
if(trim($menuPermissaoUser['menu_2008311143334693']['ordenador']) ==
'qualquer coisa')
                                echo 'IGUAL<br>';                       
                        else
                                echo 'NAO IGUAL<br>';
                        
                        
if($menuPermissaoUser['menu_2008311143334693']['ordenador'] ===
'qualquer coisa')
                                echo 'IGUAL<br>';                       
                        else
                                echo 'NAO IGUAL<br>';

Expected result:
----------------
1
integer
0
NAO IGUAL
NAO IGUAL
NAO IGUAL

Actual result:
--------------
1
integer
0
IGUAL
NAO IGUAL
NAO IGUAL

-- 
Edit bug report at http://bugs.php.net/?id=47138&edit=1
-- 
Try a CVS snapshot (PHP 5.2):        
http://bugs.php.net/fix.php?id=47138&r=trysnapshot52
Try a CVS snapshot (PHP 5.3):        
http://bugs.php.net/fix.php?id=47138&r=trysnapshot53
Try a CVS snapshot (PHP 6.0):        
http://bugs.php.net/fix.php?id=47138&r=trysnapshot60
Fixed in CVS:                        
http://bugs.php.net/fix.php?id=47138&r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=47138&r=needdocs
Fixed in release:                    
http://bugs.php.net/fix.php?id=47138&r=alreadyfixed
Need backtrace:                      
http://bugs.php.net/fix.php?id=47138&r=needtrace
Need Reproduce Script:               
http://bugs.php.net/fix.php?id=47138&r=needscript
Try newer version:                   
http://bugs.php.net/fix.php?id=47138&r=oldversion
Not developer issue:                 
http://bugs.php.net/fix.php?id=47138&r=support
Expected behavior:                   
http://bugs.php.net/fix.php?id=47138&r=notwrong
Not enough info:                     
http://bugs.php.net/fix.php?id=47138&r=notenoughinfo
Submitted twice:                     
http://bugs.php.net/fix.php?id=47138&r=submittedtwice
register_globals:                    
http://bugs.php.net/fix.php?id=47138&r=globals
PHP 4 support discontinued:          http://bugs.php.net/fix.php?id=47138&r=php4
Daylight Savings:                    http://bugs.php.net/fix.php?id=47138&r=dst
IIS Stability:                       
http://bugs.php.net/fix.php?id=47138&r=isapi
Install GNU Sed:                     
http://bugs.php.net/fix.php?id=47138&r=gnused
Floating point limitations:          
http://bugs.php.net/fix.php?id=47138&r=float
No Zend Extensions:                  
http://bugs.php.net/fix.php?id=47138&r=nozend
MySQL Configuration Error:           
http://bugs.php.net/fix.php?id=47138&r=mysqlcfg

Reply via email to