对来自第三方网站的simplexml读取是否存在域限制

时间:2012-08-04 20:53:46

标签: php xml simplexml

我有一个非常简单的问题。我是新手,所以请原谅,如果太基本了。

如果我在我的localhost服务器(apache / mamp)上运行以下脚本,它运行正常,并为我提供某个位置的当前温度。如果我将其上传到我的网站,它就不会运行。无法弄明白。也许有人可以帮忙。谢谢。我正在使用网络解决方案域服务器,共享主机。

<?php
    $myFeed = simplexml_load_file('http://w1.weather.gov/xml/current_obs/KAND.xml');
    $temperature =  ($myFeed->temp_f) . " F ";
    echo $temperature;
?>

1 个答案:

答案 0 :(得分:0)

这里最可能的问题是the allow_url_fopen setting。这可能会被您的主机设置为关闭,或者他们可能有相关的限制。

请注意,放置此限制的不是SimpleXML - simplexml_load_file主要用于处理本地文件路径。 PHP“文件系统包装器”允许您使用URL,就像它是本地文件的路径并自动下载一样,但只有在配置为允许这样做时才会使用。

要解决此问题,请查看使用“CURL”将URL中的内容显式提取为字符串,然后使用simplexml_load_string

加载它的示例