我想用xml
解析PHP
个文件。我用了这段代码:
$images = parsage("Rambod_catalog.xml", "Thumbnail");
$prices = parsage("Rambod_catalog.xml", "Retail_Price");
echo sizeof($images);
function getindex($element, $liste) {
for($i=0;$i<sizeof($liste);$i) {
if($liste[$i] == $element)return $i;
}
return 0;
}
function parsage($document, $noeud) {
$document_xml = new DomDocument;
$document_xml->load($document);
$elements = $document_xml->getElementsByTagName($noeud);
return $elements;
}
但我得到了这个例外:
Warning: DOMDocument::load() [domdocument.load]: I/O warning :
failed to load external entity "/Rambod_catalog.xml"
那么,问题是什么?我该如何修复我的代码?
答案 0 :(得分:0)
"/Rambod_catalog.xml"
您提供的路径无效。不幸的是,你所写的内容是指文件系统root。文件存储在当前目录中,您删除前导斜杠或指定完整路径。 (include_path有时不可靠)。
你应该引用像CONSTANT_TO_DOCUMENT_ROOT.PATH_SEPARATOR。$ fileName这样的文件,以便灵活。
另见getcwd()和$_SERVER global variable,需要使用print_r或var_dump reserved globlas来查找可用于CONSTANT_TO_DOCUMENT_ROOT的内容。