我正在尝试解析以下 XML 文件:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE content PUBLIC "-//BLACKWELL PUBLISHING GROUP//DTD 4.0//EN" "http://www.blackwellpublishing.com/xml/dtds/4-0/bpg4-0.dtd">
<content dtdver="4.0" docfmt="xml">
....
<forenames>NIELS BØIE</forenames><x> </x>
起初它不会加载,但现在我的代码至少似乎使用 DTD 来找出像Ø
(Ø) 这样的实体,但下一个问题是它没有在输出中显示字符。
这是我的解析代码:
$options = LIBXML_DTDLOAD | LIBXML_NOENT | LIBXML_DTDVALID | LIBXML_NOCDATA;
$doc = simplexml_load_string ( $xml,null,$options );
echo $doc->document->header->namegroup->name->forenames."\n";
这是输出:
尼尔斯·比
我也尝试使用 DOM XML 解析,然后输出是 NIELS B IE(所以有一个空格..)
有任何想法吗?