我正在尝试从此网址获取xml数据。
http://cloud.tfl.gov.uk/TrackerNet/PredictionSummary/V 我可以直接在我的浏览器栏中输入网址并获得所需的结果。
我正在尝试使用下面的代码来获取xml并将其返回到我的浏览器,但现在位于正确的域中,以便可以通过javascript访问它。
<!DOCTYPE html>
<html>
<head>
<link type='text/css' rel='stylesheet' href='style.css'/>
<title>Get Started!</title>
</head>
<body>
<p><?php
/*echo file_get_contents("http://cloud.tfl.gov.uk/TrackerNet/PredictionSummary/V");*/
echo simplexml_load_file("http://cloud.tfl.gov.uk/TrackerNet/PredictionSummary/V");
?></p>
</body>
</html>
我已经尝试过file_get_contents和simplexml_load_file 但都没有成功
我认为问题在于url末尾没有文件。 以下没有工作的东西
答案 0 :(得分:4)
simplexml_load_file()
返回一个对象而不是XML字符串。即使这样,使用当前代码,XML也会在HTML中丢失。以下内容相当于直接访问URL:
header('Content-type: application/xml');
echo file_get_contents('http://cloud.tfl.gov.uk/TrackerNet/PredictionSummary/V');
要确保您可以解析XML,请尝试此操作。它加载XML并打印出根节点的名称 - 在本例中为 ROOT :
$xml = simplexml_load_file($url); //retrieve URL and parse XML content
echo $xml->getName(); // output name of root element
这有帮助吗?
答案 1 :(得分:2)
请参阅
的文档http://php.net/manual/en/simplexml_load_file
打印输出的示例
<?php
$xml = simplexml_load_file('http://cloud.tfl.gov.uk/TrackerNet/PredictionSummary/V');
print_r($xml);
?>
或查看手册
http://php.net/manual/en/function.echo.php
通过file_get_contents()
输出字符串返回<?php
$xml = file_get_contents("http://cloud.tfl.gov.uk/TrackerNet/PredictionSummary/V");
echo $xml;
?>