简单xml 解析xml 唯一版本
simplexml parse xml only version
我必须将自动生成的 XML 文件解析为 PHP,但没有成功。
我正在获取一个包含 XML 个文件的文件夹,并且必须解析每个文件。奇怪的是,我只得到版本作为输出。
我的代码:
$xml_folder = "/var/www/sitename/xml_folder/";
$xml_files = scandir($xml_folder);
$xml_files = array_diff($xml_files, array('.', '..'));
foreach($xml_files as $file) {
$xml_file = $xml_folder . $file;
$xml = simplexml_load_file($xmlfile);
print_r($xml);
}
现在,我的输出如下所示:
XML 看起来像正常生成的 XML,这里是它的截图预览:
当然,它不是结构化的,但任何浏览器都可以处理它并创建有效的结构。
结构对simplexml
重要吗?
我尝试了一系列变体以使其工作(即使使用 simplexml_load_string
),但没有任何效果。
您不应该将 print_r
用于 XML,它不适用于 xml。
相反,您可以使用它来显示 xml 结构
echo $xml->asXML();
检查答案来自:SimpleXML and print_r() - why is this empty?
Don't use print_r() or var_dump() to inspect a SimpleXMLElement, they
won't necessarily work on them because SimpleXML uses lots of magic
behind the scene. Instead, look at what
asXML()
returns.
我必须将自动生成的 XML 文件解析为 PHP,但没有成功。
我正在获取一个包含 XML 个文件的文件夹,并且必须解析每个文件。奇怪的是,我只得到版本作为输出。
我的代码:
$xml_folder = "/var/www/sitename/xml_folder/";
$xml_files = scandir($xml_folder);
$xml_files = array_diff($xml_files, array('.', '..'));
foreach($xml_files as $file) {
$xml_file = $xml_folder . $file;
$xml = simplexml_load_file($xmlfile);
print_r($xml);
}
现在,我的输出如下所示:
XML 看起来像正常生成的 XML,这里是它的截图预览:
当然,它不是结构化的,但任何浏览器都可以处理它并创建有效的结构。
结构对simplexml
重要吗?
我尝试了一系列变体以使其工作(即使使用 simplexml_load_string
),但没有任何效果。
您不应该将 print_r
用于 XML,它不适用于 xml。
相反,您可以使用它来显示 xml 结构
echo $xml->asXML();
检查答案来自:SimpleXML and print_r() - why is this empty?
Don't use print_r() or var_dump() to inspect a SimpleXMLElement, they won't necessarily work on them because SimpleXML uses lots of magic behind the scene. Instead, look at what
asXML()
returns.