使用以下 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
(也不存在,被视为字符串。您会收到关于此的通知适当的错误级别)
$tmp = 'News.Env';
$xmlobj->News->$tmp;
或者简而言之
$xmlobj->News->{'News.Env'};
更新:如果您使用
SimpleXML
(并且根据您执行的语法),它 $xmlobj
以 News
-(root-)Element“开始”。
$xmlobj->{'News.Env'};
尝试类似的事情
$string = <<<XML
<?xml version="1.0" encoding="utf-8"?>
<News>
<News.Env>abc</News.Env>
</News>
XML;
$xml = simplexml_load_string($string);
print_r($xml->{'News.Env'});