Php SimpleXMLElement返回空对象

Php SimpleXMLElement返回空对象,php,xml,Php,Xml,就像阳光一样简单: $xml = new SimpleXMLElement('<string>-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==</string>'); var_dump($xml->{"string"});die(); 我希望“字符串”节点的内容。。。 如果我这样做 我得到: object(SimpleXMLElement)#66 (1) { [0]

就像阳光一样简单:

$xml = new SimpleXMLElement('<string>-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==</string>');
             var_dump($xml->{"string"});die();
我希望“字符串”节点的内容。。。 如果我这样做

我得到:

object(SimpleXMLElement)#66 (1) { [0]=> string(61) "-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==" }
但是如何获取节点“字符串”?

顶层元素(也称为根节点)总是隐式的。您还需要强制转换为标量类型,否则将得到对象本身。合并:

$xml = new SimpleXMLElement('<string>-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==</string>');
var_dump((string)$xml);
$xml=新的SimpleXMLElement('-2 |-2 | 635705730515209906 | 7f2shuraqfjmvxtxvgkm2yjghworaze/g=');
变量转储((字符串)$xml);

.

删除:
->{“string”}
部分…不确定,也许您想改为这样做。(使用xpath)如果有2个根级别的节点?AB?若您有两个根级节点,那个么问题就解决了:不能使用SimpleXML处理格式错误的XML,因为从技术上讲,它不是XML。当我看到您进行了编辑时,我删除了我的答案,因此我有机会进行验证,但是,老实说,我不明白为什么它对您不起作用。据我所知,如果您没有“根”父元素,您就不能“直接”访问这些节点,因为XML是无效的。但是,通过添加,您可以使用->字符串或->字符串1等进行访问。您可以在文档的开头和结尾添加和,还是从外部加载该XML?
object(SimpleXMLElement)#66 (1) { [0]=> string(61) "-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==" }
$xml = new SimpleXMLElement('<string>-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==</string>');
var_dump((string)$xml);