使用以下xml格式,我们如何从php中的XMLReader访问News.Env元素?
$xmlobj->News->News.Env给出了不正确的Env。

<?xml version="1.0" encoding="utf-8"?>
<News>
  <News.Env>abc</News.Env>
</News>

最佳答案

这是因为点.是php中的字符串连接器。在您的情况下,它尝试将$xmlobj->News->News(不存在,因此为空)与常量Env(也不存在,并被视为字符串。)相关联,并带有相应的error_level来通知您

$tmp = 'News.Env';
$xmlobj->News->$tmp;

或总之
$xmlobj->News->{'News.Env'};

更新:如果您使用SimpleXML(并按照语法进行操作),它的$xmlobj将以News-(root-)元素“开始”。
$xmlobj->{'News.Env'};

关于php simplexml,xml中的元素中带有点字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6531380/

10-13 05:26