【问题标题】:Can PHP be used inside an XML file?可以在 XML 文件中使用 PHP 吗?
【发布时间】:2011-05-17 05:27:19
【问题描述】:

我正在尝试从我已经拥有的 mysql 数据库生成 RSS 提要。我可以在要发送给用户的 XML 文件中使用 PHP,以便它根据请求生成内容吗?或者我应该在 PHP 文件上使用 cron 并生成一个 xml 文件?或者我应该在提交要在 RSS 中使用的内容时添加生成 xml 的 php 文件的执行?您认为最佳做法是什么?

【问题讨论】:

    标签: php xml rss


    【解决方案1】:

    这三种方法在技术上都是可行的。但是,我不会使用 cron,因为它会在数据库内容更改后延迟 XML 文件的更新过程。

    您可以轻松地将 PHP 代码嵌入到您的 XML 文件中,您只需确保文件在服务器端被解释为 PHP,方法是使用 *.php 扩展名重命名它们或更改服务器指令.htaccess 文件。

    但我认为这里的最佳做法是在更新数据库内容时生成新的 XML 文件。我猜想查看 XML 文件的次数比数据库内容更改的次数要多,因此这种方法可以减少服务器负载。

    【讨论】:

      【解决方案2】:

      使用 cron 来自动化构建 XML 文件的 PHP 脚本。您甚至可以在 PHP 中自动化邮件部分。

      【讨论】:

      • 我的托管服务提供商只允许我每 30 分钟执行一次 cron 作业。如果提要项目的提交速度比这快怎么办?用户将不得不等待.. 我不希望这样
      【解决方案3】:

      你提到的第三种方法。如果用户请求中有数据,我不明白如何在这里使用 cron。第一种方法无法实现。

      【讨论】:

      • 内容基本上是我们的编辑在网站上提交的新闻。因此,RSS 提要仅在提交新闻时发生变化。所以当时生成 rss 提要是合乎逻辑的
      【解决方案4】:

      Content-type 标头设置为text/xml,让您的PHP 脚本像生成任何其他内容一样生成XML。不过,您可能需要考虑使用缓存,以免意外压垮服务器。

      【讨论】:

      • 那么指向 RSS 提要的链接会是 .php 文件本身吗?
      猜你喜欢
      • 2010-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多