Пробелами в XML является TextNodes, например,
<foo>
<bar>baz</bar>
</foo>
действительно
<foo><- whitespace node
-><bar>baz</bar><- whitespace node
-></foo>
Если вы удалите узел <bar>
, вы получите
<foo><- whitespace node
-><- whitespace node
-></foo>
Я думаю, что SimpleXml не позволит вам легко получить доступ к узлам Text (возможно, через XPath), но DOM это делает.См. ответ Wrikken для деталей.Теперь, когда вы знаете, что пробел является узлом, вы также можете представить, что его анализ в узле занимает несколько циклов ЦП.Тем не менее, я бы сказал, что скорость воздействия незначительна.Если сомневаетесь, сделайте эталонный тест с некоторыми данными реального мира.
РЕДАКТИРОВАТЬ: Доказательство того, что пробельные символы действительно являются узлами
$xml = <<< XML
<foo>
<bar>baz</bar>
</foo>
XML;
$dom = new DOMDocument;
$dom->loadXML($xml);
foreach($dom->documentElement->childNodes as $node) {
var_dump($node);
}
дает
object(DOMText)#4 (0) {}
object(DOMElement)#6 (0) {}
object(DOMText)#4 (0) {}