从PHP SimpleXML节点获取实际值
问题描述:
$value = $simpleXmlDoc->SomeNode->InnerNode;
实际上将一个simplexml对象赋值给$ value而不是InnerNode的实际值。从PHP SimpleXML节点获取实际值
如果我做的:
$value = $simpleXmlDoc->SomeNode->InnerNode . "\n";
我得到的值。无论如何获得实际价值没有笨拙的外观. "\n"
?
答
按照你想要的任何类型进行投射(并且有意义...)。通过连接,你含蓄地转换为String,所以
$value = (string) $xml->someNode->innerNode;
答
怎么样使用类型转换,像这样的事情:
$value = (string)$simpleXmlDoc->SomeNode->InnerNode;
或者你可以可能使用strval (),intval()等等 - 因为函数调用可能会更慢。
答
要么将它转换为字符串,或在字符串上下文中使用它:
$value = (string) $simpleXmlDoc->SomeNode->InnerNode;
// OR
echo $simpleXmlDoc->SomeNode->InnerNode;
答
您不必指定innerNode
。
$value = (string) $simpleXmlDoc->SomeNode;
这是回答在http://*.com/questions/416548/forcing-a-simplexml-object-to-a-string-regardless-of-context – null 2009-07-16 14:39:50