【问题标题】:how to get updates from xml file with php?如何使用 php 从 xml 文件中获取更新?
【发布时间】:2012-12-06 20:45:34
【问题描述】:

我正在编写一个 livecore 和统计网站,我想将我的网站“使用 php”链接到一个 xml 页面,以帮助我尽快获得分数和数据的更新。我尝试了以下 php 代码:

$xml = simplexml_load_file("http://www.iddaa.com.tr/XML/IDDAAMACPROGRAMI/index.htm?iddaadrawid=05.12.2012&iddaadrawide=06.12.2012&foraccess=KSsec654");

print_r($xml);

它给了我以下错误:

Warning: simplexml_load_file() [function.simplexml-load-file]: http://www.iddaa.com.tr/XML/IDDAAMACPROGRAMI/index.htm?iddaadrawid=05.12.2012&iddaadrawide=06.12.2012&foraccess=KSsec654:22: parser error : Opening and ending tag mismatch: link line 10 and head in C:\wamp\www\test\11.php on line 2

注意:我尝试了另一个链接“http://www.goalserve.com/samples/soccer_livescore.xml” 我可以打印该链接中的信息。

请任何人帮助我将 xml 文件正确链接到我的网站?

【问题讨论】:

  • 这不是一个有效的 XML 文件,所以它当然不起作用。
  • 你可能想在将它提供给 simplexml_load_string() 之前整理::clearRepair() xml 提要,希望这会有所帮助

标签: php xml


【解决方案1】:

你可以试试

$xml  = file_get_contents("http://www.iddaa.com.tr/XML/IDDAAMACPROGRAMI/index.htm?iddaadrawid=05.12.2012&iddaadrawide=06.12.2012&foraccess=KSsec654");
$config = array(
        'indent' => true,
        'clean' => true,
        'input-xml'  => true,
        'output-xml' => true,
        'wrap'       => false
);

$tidy = new Tidy();
$xml = $tidy->repairString($xml, $config);

$xml = new SimpleXMLElement($xml);
print_r($xml);

【讨论】:

  • 当我运行您的代码时,我收到以下消息:“第 11 行的 C:\wamp\www\test\11.php 中找不到类 'Tidy'”我正在使用 WAMP 服务器和我的 php 版本是 5.3.5 tidy dll 未激活,所以我取消了 tidy 的 dll 文件的注释,并从pecl.php.net/package/tidy 安装了 tidy 文件,但我找不到如何正确安装和配置它们以使 tidy 类正常工作,所以你能帮忙吗请给我这个?
猜你喜欢
  • 2014-05-31
  • 1970-01-01
  • 2010-09-15
  • 1970-01-01
  • 2011-05-29
  • 1970-01-01
  • 1970-01-01
  • 2012-09-14
  • 1970-01-01
相关资源
最近更新 更多