PHP parsing XML from URL


PHP parsing XML from URL

我正在使用此代码从URL获取一些XML:

$url = 'http://***';
$xml = simplexml_load_file($url);
print_r($xml);
这给了我

一个空的结果,但以下链接给了我正确的结果:

$url = 'http://***/rss';

我似乎看不到这些链接之间的区别,我不知道如何在谷歌上找到答案。任何帮助将不胜感激。

这个 xml 文件字符集不是 UTF8 字符集,但你可以看到 StdObject 与以下内容:

    <?php
    header('Content-type: text/html; charset=utf-8');
    $url = 'http://shelly.ksu.ru/e-ksu/get_schedulle_aud?p_id=563';
    $data = file_get_contents($url);
    $data = iconv(mb_detect_encoding($data, mb_detect_order(), true), "UTF-8", $data);
    $xml = simplexml_load_string($data);
    print_r($xml);

好的,这项工作非常完美:

header("Content-Type: text/plain; charset=utf8");
$url = 'http://***';
$xml_string = file_get_contents($url);
$utf_xml_string = iconv("cp1251", "utf8", $xml_string);
print_r(" *** iconv() ***'n");
print_r($utf_xml_string);   
print_r("'n'n");

我正在使用 iconv 来转换字符串。