从PHP SimpleXML节点获取实际值

$value = $simpleXmlDoc->SomeNode->InnerNode; 

实际上将一个simplexml对象赋值给$ value,而不是InnerNode的实际值。

如果我做:

 $value = $simpleXmlDoc->SomeNode->InnerNode . "\n"; 

我明白了价值。 无论如何获得实际价值没有笨拙的样子. "\n" . "\n"

演变成你想要的任何types(并且是合理的…)。 通过连接,你隐式地转换为string,所以

 $value = (string) $xml->someNode->innerNode; 

您不必指定innerNode

$value = (string) $simpleXmlDoc->SomeNode;

怎样使用types转换,就像这样:

 $value = (string)$simpleXmlDoc->SomeNode->InnerNode; 

请参阅: types杂耍

或者你可以使用strval(),intval()等等 – 因为调用函数可能会慢一些。

将其转换为string,或者在string上下文中使用它:

 $value = (string) $simpleXmlDoc->SomeNode->InnerNode; // OR echo $simpleXmlDoc->SomeNode->InnerNode; 

请参阅SimpleXML参考函数指南