#31045 [Bgs]: Testing return value of simplexml_load_string
ID: 31045
User updated by: rbro at hotmail dot com
Reported By: rbro at hotmail dot com
Status: Bogus
Bug Type: SimpleXML related
Operating System: Linux
PHP Version: 5CVS-2004-12-09 (dev)
New Comment:
Ok, but then why does this work as expected (when a valid host,
username, password, and db are supplied):
Reproduce code:
---------------
<?php
if (($db = mysqli_connect('localhost', 'user', 'password',
'db')) ===
false)
{
echo 'equals false';
}
else
{
echo 'does not equal false';
}
?>
Expected result:
----------------
does not equal false
Actual result:
--------------
does not equal false
Previous Comments:
------------------------------------------------------------------------
[2004-12-09 23:53:03] fmk@php.net
PHP is loosly typed so comparing an object with a boolean will result
in this behavior.
try comparing with === or check the type of the returned object.
------------------------------------------------------------------------
[2004-12-09 23:23:58] rbro at hotmail dot com
Description:
------------
The manual states that simplexml_load_string (and simplexml_load_file)
returns false on any errors. In the following example, I am loading a
valid xml stream, but the simplexml object returned seems to equal
false when it shouldn't.
Reproduce code:
---------------
<?php
$doc = simplexml_load_string('<xml></xml>');
if ($doc == false)
{
echo 'equals false';
}
else
{
echo 'does not equal false';
}
?>
Expected result:
----------------
does not equal false
Actual result:
--------------
equals false
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=31045&edit=1
Thread (9 messages)