ID: 12674
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Status: Bogus
Bug Type: Scripting Engine problem
Operating System: Win2000 sp2
PHP Version: 4.0.6
New Comment:
Geez... THAT'll make some people quite confused/lost, when analysing the results from
a function with if/elseif or switch.
Consider:
<?
function foo(){
#...
return true;
#...or...
return 'works ok';
}
$foo = foo();
if(!$foo){
#whatever
}elseif($foo == 'works ok'){
#this will hit
}else{
#or else...
}
?>
Previous Comments:
------------------------------------------------------------------------
[2001-08-09 08:32:38] [EMAIL PROTECTED]
any non-empty string will evaluate true!
------------------------------------------------------------------------
[2001-08-09 08:18:08] [EMAIL PROTECTED]
Hmm... why is that ?
Am I reading manual too briefly, or is there something with the operators ? might be
bogus, but please enlighten me:P
btw: I thought that there's no seperate boolean type =]
<?
function foo(){
return true;
}
if(foo() == 'whatever you like'){
echo '!?!? why is that equal ?';
}
?>
<?
function paranoid(){
return 1;
}
if(!(paranoid() == (string) 'whatever you like')){
echo 'hmm??';
}
?>
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=12674&edit=1
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]