我需要一个RSS Feed生成器;我应该使用课程还是应该自己生成Feed?
如果我自己应该生成它,哪里有一个获得标准综合规范的好地方?
如果没有,是否有任何好的课程可以做到并快速完成并且做得好?
答案 0 :(得分:19)
PHP Universal Feed Generator (supports RSS 1.0, RSS 2.0 and ATOM)
特点:
- 生成RSS 1.0,RSS 2.0和ATOM 1.0提要
- 所有Feed均由Feed验证程序验证。
- 支持所有可能的Feed元素。
- 简单明了地定义频道和Feed项目
- 为不同版本实现适当的命名空间。
- 自动转换日期格式。
- 为ATOM Feed生成UUID。
- 启用子标签和属性的使用。 (例如:图像和封闭标签)
- 完全以PHP5类结构面向对象。
- 处理所需标签的CDATA编码。
- 用于生成各种Feed的几乎相同的代码
答案 1 :(得分:4)
很快会有一个名为Zend_Feed_Writer的Zend Framework组件看起来非常有趣。这是摘自该组件的一个(可能是?)开发人员PadráicBrady(link to the blog post)的摘录。他说它目前在Zend Framework孵化器中,但第一个正式版本应该在周末结束时准备好了:
<强> Zend_Feed_Writer 强>
块上的新孩子,待补充 在Zend Framework 1.10中,是 Zend_Feed_Writer。有点像年纪大了 Zend_Feed_Builder类,其目的 是生成Atom 1.0和RSS 2.0 饲料。不同之处在于,就像 它的兄弟Zend_Feed_Reader,它是 标准意识到并完全运作 使用PHP的DOM。
为什么另一个饲料生成组件? 问题有点类似于 一个Zend_Feed_Reader解决了。 生成RSS和Atom提要是远远不够的 更多参与而不是坚持一堆 元素在一起 - 每个标准都有 它的怪癖,独特的功能和 它自己的一套最佳实践 的标准。运用 Zend_Feed_Builder,你依靠两个 事情 - 重复和验证。 摆脱核心焦点 需要更多的工作,甚至在一定程度上 子类化,你总是在 误解一个人的怜悯 标准。
Zend_Feed_Writer建立在简单的基础之上 Zend_Feed_Reader的API(使用setter 而不是吸气剂)和概念 让组件了解 标准(所以你不必)。该 组件分为两个类 types - 要存储的基本数据容器 提供数据并确保其符合 预期的格式和渲染器 实际上生成饲料和 提供有关标准的反馈 坚持。例如,在Atom 1.0中 遗漏的标题将产生 例外 - 标题是 Atom 1.0下的强制性元素 标准。虽然这可能是 事实是,这被解释为令人讨厌的 无效的Atom 1.0 Feed更糟糕 比没用。更好的是你被激怒了 现在,比以后在线时 验证者称你粗鲁的名字: - )。
这种方法的最终结果是 你专注于数据,并让 Zend_Feed_Writer担心什么 要使用的元素和属性。它 应该在理论上(总是一个盛大的 事情),是不可能的 Zend_Feed_Writer生成无效 进料。
当然,我们也投入了 扩展的概念,如同 Zend_Feed_Reader,允许您添加 支持RSS和Atom扩展 更动态,无需 子类化或API臂扭曲。
如果你去寻找 Zend_Feed_Writer,它目前在 孵化器中的块状物。我应该 它完全集成和功能 整个周末。但是你可以给 它是编写Atom 1.0 feed的一个镜头 只要你坚持核心 元素(即大多数博客供稿)。 RSS 2.0支持是我需要完整填写的最后一部分。
答案 2 :(得分:2)