在PHP中,如何获得XML属性的简单文本


In PHP how do you get the simple text of an XML attribute only XML?

我有一个从cURL帖子中返回的XML:

$output=<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<mtMessageRsp carrier="102" messageId="769f2e4f-56da-4865-988a-a9199c387a48"/>

我通过将其作为XML返回

return simplexml_load_string($output);

$result正在获取回报,并返回为:

$result = { 
  "@attributes" :  { 
    carrier : "102",
    messageId : "8d691cbe-d188-42b1-9041-387666d39c6a"
  }

如何向下搜索以获取平面文本形式的messageId?当我使用这个:

$result['messageId']

我得到:

{ 
  "0" : "bf629ae9-c86a-486a-bfb0-704e16448ddf"
}

但我只想:

bf629ae9-c86a-486a-bfb0-704e16448ddf

在另一篇文章中发现了这一点:

$msgID = (string) $result['messageId'];

您必须将simpleXML对象强制转换为字符串。POST:从SimpleXMLElement对象中获取值