mirror of
https://github.com/php/php-src.git
synced 2026-03-28 18:22:42 +01:00
. Fix memleaks . Add tests . Add functions: getNamespaces(), getDocNamespaces() . Fixed var_dump() . Fixed bugs: #35028 XML object fails FALSE test # This plan was decided before 5.1.0 came out with ilia and checked again # just now. The extension currently shows no more memleaks or errors using # the test suite.
SimpleXML is meant to be an easy way to access XML data.
SimpleXML objects follow four basic rules:
1) properties denote element iterators
2) numeric indices denote elements
3) non numeric indices denote attributes
4) string conversion allows to access TEXT data
When iterating properties then the extension always iterates over
all nodes with that element name. Thus method children() must be
called to iterate over subnodes. But also doing the following:
foreach ($obj->node_name as $elem) {
// do something with $elem
}
always results in iteration of 'node_name' elements. So no further
check is needed to distinguish the number of nodes of that type.
When an elements TEXT data is being accessed through a property
then the result does not include the TEXT data of subelements.
Known issues
============
Due to engine problems it is currently not possible to access
a subelement by index 0: $object->property[0].
TODO
====
At the moment property access to multiple elements of the same
name returns an array of SimpleXML objects. This should be an
object of a new type instead so that all kinds of linkage,
assignment and deleting would work.