It may also return DOMNameSpaceNode if you`re requesting 'xmlns:_prefix_'. So you`re unable to remove it with removeAttributeNode() which requires DOMAttr as parameter.
(PHP 5, PHP 7)
DOMElement::getAttributeNode — Returns attribute node
Returns the attribute node with name name
for the
current element.
name
The name of the attribute.
The attribute node. Note that for XML namespace declarations (xmlns and xmlns:* attributes) an instance of DOMNameSpaceNode is returned instead of a DOMAttr.
It may also return DOMNameSpaceNode if you`re requesting 'xmlns:_prefix_'. So you`re unable to remove it with removeAttributeNode() which requires DOMAttr as parameter.
Just trying to add some clarification: this function will return boolean "false" when there is not a $name attribute :)
Cheers, Alex