php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #72166 Empty SimpleXML elements
Submitted: 2016-05-05 15:00 UTC Modified: 2016-05-05 22:43 UTC
From: rmoisto at gmail dot com Assigned:
Status: Not a bug Package: SimpleXML related
PHP Version: Irrelevant OS:
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: rmoisto at gmail dot com
New email:
PHP Version: OS:

 

 [2016-05-05 15:00 UTC] rmoisto at gmail dot com
Description:
------------
Creating a SimpleXMLElement on a soap envelope should not result in an empty object. It makes no sense.

Also, now that I looked it up, empty SimpleXML objects cast to boolean will be false. That's so random and stupid. Why? ALL other objects cast to true.

Test script:
---------------
https://3v4l.org/vejJM


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2016-05-05 22:43 UTC] requinix@php.net
-Status: Open +Status: Not a bug
 [2016-05-05 22:43 UTC] requinix@php.net
SimpleXML does a lot of "magic" with some PHP behaviors. Most of it depends on the current working namespace, which is initially ""; methods like children() and attributes() will return a new object with a different namespace.

Dumping the contents of the object will only show you XML nodes within the current namespace.
https://3v4l.org/Nmf0G

An object's boolean value depends on whether there are XML nodes in the current namespace.
https://3v4l.org/6YOWK
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Dec 26 12:01:30 2024 UTC