我正在尝试解析我附加的下一个xml。问题是我无法使用PHP 5.6解析下一行。我想提取属性。
<vuln:vulnerable-configuration id="http://www.nist.gov/">
<cpe-lang:logical-test operator="OR" negate="false">
<cpe-lang:fact-ref name="cpe:/o:microsoft:windows_8:-"/>
<cpe-lang:fact-ref name="cpe:/o:microsoft:windows_8.1:-"/>
<cpe-lang:fact-ref name="cpe:/o:microsoft:windows_server_2012:-:gold"/>
<cpe-lang:fact-ref name="cpe:/o:microsoft:windows_rt:-:gold"/>
<cpe-lang:fact-ref name="cpe:/o:microsoft:windows_rt_8.1:-"/>
</cpe-lang:logical-test>
</vuln:vulnerable-configuration>
我使用了下一个代码,但我无法捕获de cpe-lang字段。此外,我已经尝试使用命名空间,但我无法获得vuln命名空间内的东西的孩子。
[$source = file_get_contents('C:/xampp/htdocs/prueba/products1.xml');
$xml = new SimpleXMLElement($source);
$entries = $xml->entry;
foreach ($entries as $entry) {
$namespace = $entry->getNameSpaces(true);
$tmp = $entry->children($namespace\['cpe-lang'\],false);
print_r($tmp)
$aux={'fact-ref'};
$config\['fact-ref'\]= (string)$entry->children('vuln', TRUE)->config->children($aux, TRUE)->logical_test->{'fact-ref'};
print_r($config);
}][1]
如果我打印变量$ tmp,它表示该数组为空。 当我打印$ config时,它说:
Warning: main(): Node no longer exists in C:\xampp\htdocs\prueba\probando.php on line 56
Notice: Trying to get property of non-object in C:\xampp\htdocs\prueba\probando.php on line 56
Array ( [fact-ref] => )
由于