我对php和xml都很新。我想做什么 从调用url的xml中读取php,然后解析xml。 (当$ urlip =' localfile.xml'时,我可以在下面的例子中使用它。 但是当我输入网址时却没有。我通过浏览器访问它检查了网址, 我可以看到xml。我也做了一个节目源,复制它然后粘贴了 xml进入localfile,工作正常 在尝试从URL获取xml时我做错了什么?
谢谢
返回的错误是: 加载XML Start标记时出错,'<'找不到
这是我的代码剪辑它:
$urlip="test.xml";# for debugging since I cannot read from the url yet! not sure why....
if (($xml = file_get_contents($urlip))===false) {
echo "error fetching XML\n";
} else {
libxml_use_internal_errors(true);
$data = simplexml_load_string($xml,null,LIBXML_NOCDATA);
if (!$data) {
echo "Error loading XML\n";
foreach(libxml_get_errors() as $error) {
echo "\t", $error->message;
}
} else {
foreach ($data as $item) {
$type = $item->TAB_TYPE;
$number=$item->ALT_ID;
$title = $item->SHORT_DESCR;
$searchlink = $item->ID;
$rsite=$item->CATEGORY;
echo "type $type, number $number, title $title, search link $searchlink, site $rsite\n";
}
}
}
答案 0 :(得分:0)
最有可能出现的情况:
您的函数查询远程URL并返回一个空字符串,该字符串会传递“if”语句的条件。
之后 - 您尝试将空字符串传递给XML,但它不能,因此它会给您一个错误。
您的解决方法: