php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Doc Bug #36841 Empty objects are false?
Submitted: 2006-03-24 10:00 UTC Modified: 2006-03-30 04:30 UTC
From: clemens at gutweiler dot net Assigned:
Status: Not a bug Package: Documentation problem
PHP Version: 5.1.2 OS: Linux
Private report: No CVE-ID: None
 [2006-03-24 10:00 UTC] clemens at gutweiler dot net
Description:
------------
casting empty simplexml objects to boolean, empty objects get transformed to false.

Reproduce code:
---------------
var_dump( $foo = simplexml_load_string( "<foo />" ) );
object(SimpleXMLElement)#1 (0) {
}

var_dump( (bool)simplexml_load_string( "<foo />" ) );
bool(false)

var_dump( (bool)simplexml_load_string( "<foo>foo</foo>" ) );
bool(true)

Expected result:
----------------
both boolean-casts should be true.


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-03-24 10:03 UTC] tony2001@php.net
This is expected behaviour of SimpleXML (and it has nothing to do with the engine).
No bug here.
 [2006-03-24 10:31 UTC] clemens at gutweiler dot net
Is this behaviour of SimpleXML documentated?
I could only find, that objects are false in PHP4 only. And in PHP5 objects should cast to true in any case or?

http://www.php.net/manual/en/language.types.boolean.php#language.types.boolean.casting
 [2006-03-30 04:30 UTC] simp@php.net
Please do not submit the same bug more than once. An existing
bug report already describes this very problem. Even if you feel
that your issue is somewhat different, the resolution is likely
to be the same. 

Thank you for your interest in PHP.

http://bugs.php.net/bug.php?id=30972

This behaviour of the SimpleXML cast handler is now documented. Thanks for your input.
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Tue Aug 12 11:00:03 2025 UTC