【问题标题】:How to create php RSS simulator?如何创建 php RSS 模拟器?
【发布时间】:2014-05-13 04:36:29
【问题描述】:

所以我在file.xml 中有 10 000 条记录的 RSS 提要(我在 1 小时内从 10 个提要中收集了它们,所以时间戳无济于事,顺便说一句,我使用了 yahoo pipes)。我需要一些课程来模拟每天出现 24 条记录,每小时 1 条记录。

我是怎么看的:

  1. file.xml转成sql表(如果你知道这个类请帮忙)

  2. 创建时间戳(谁能提供一种为 10 000 条记录生成时间戳的好方法?)

  3. 创建返回 rss 的类(查看计算机时钟并返回从一开始到现在的记录)(您能否提供一种从 DB 生成有效 RSS 的方法?)

所以如果可以的话,请提供任何帮助。

我使用 xampp 作为 php apache mysql server holder。

我将在我的开发机器中本地使用它(双方 - 服务器和客户端)

【问题讨论】:

  • 如果您只想将其转回 RSS,为什么还要将其添加到数据库中?您可以在渲染 RSS 的同时生成时间戳。
  • @infamouse:你能告诉我怎么做吗?

标签: php rss simulation feed


【解决方案1】:
$doc = new DOMDocument();
$doc->loadHTMLFile($file);

$xpath = new DOMXpath($doc);
$elements = $xpath->query("//fileroot/nodes");
if (!is_null($elements)) {
  $dateinterval = [0 hours];

  foreach ($elements as $element) {
     // read each node and then store it...
     $storycontents = $element->nodeValue;
     $storytimestamp = date() - $dateinterval;
     $dateinterval = $dateinterval - [1 hour];

     [add story to rss feed]
  }
}

[render all of the collected rss feed stories]

其中一些是伪代码,您可以在其中填写。但基本上是这样的。

【讨论】:

    【解决方案2】:

    好吧,为了回答您的第一个问题,我只需编写一个简单的脚本来解析提要(查看thisphp.net)并将它们存储在数据库中。

    在执行此操作时,您将存储时间戳。例如,要生成它们,您可以从当前时间戳开始,每次插入一行时只需添加 3600(因为 php 使用 unix 时间戳,3600 秒代表 1 小时)。

    关于最后一个问题,请看this的文章。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-12
      • 1970-01-01
      • 1970-01-01
      • 2020-02-29
      • 2012-11-14
      • 2016-04-04
      • 1970-01-01
      相关资源
      最近更新 更多