我遇到了一个小问题。我正在使用 Zoho CRM API,它以如下格式返回给我一个 XML:
<response uri="/crm/private/xml/Contacts/getRecords">
<result>
<Contacts>
<row no="1">
<FL val="Contact Owner">
<![CDATA[ Kristo Vaher ]]>
</FL>
<FL val="Lead Source">
<![CDATA[ Partner ]]>
</FL>
</row>
</Contacts>
</result>
</response>
当我通过 simplexml_load_string() 创建一个 XML 对象时,它将为我提供新对象中的大部分 XML,但它不会为我提供 FL 标记(CDATA 元素)的“内部”字符串,即实际感兴趣的数据我。
我的新 SimpleXML 对象只有以下数据:
[1] => SimpleXMLElement Object
(
[@attributes] => Array
(
[val] => Contact Owner
)
)
我最好的猜测是,这是因为 XML 不应该真正以这种方式构建,我在某处读到,如果 XML 标记具有属性,则不能在 XML 标记中包含内部内容,反之亦然(这是正确的吗?)。
我的替代方案是什么?自己编写解析器并不是一个真正的选择。
谢谢!