我可能想得太深了,但我仍然想知道是否有人对此有任何强烈的意见......
我正在使用 PHP 生成新闻 RSS 提要。每个新闻故事都有很多照片,这反映在我的数据库结构中,Stories 和 Photos 表之间的关系是 1:many。这意味着我正在生成一个看起来像这样的结果集:
StoryIDPhotoID
1 1
1 2
1 3
2 4
2 5
3 6
4 7
4 8
我正在生成一个嵌套数组来更准确地表示这一点:
- 我只是使用一个
foreach
语句if
来生成它,并查看StoryID
在处理每个新行时是否已经存在 - 有没有更好的方法?是否有可以有效处理 1:many 关系的内置函数/第 3 方库?)
然后有 3 种可能的选择 - 这些在哲学上是否更好?:
修改代码,使生成 XML 而不生成数组 1st
将其保留为数组(因为这似乎合乎逻辑),然后使用 SimpleXML 将其重写为 XML(这也意味着如果我想以 JSON 或任何其他格式返回信息,我不必再次重写逻辑并且可以格式化数组)-但是,这特别慢吗?特别是对于大量的 RSS 项目?
无论上述哪种情况,我知道有些人在调用 PHP 时使用 PHP 编写静态 RSS 文件(只有在要添加新数据时才会生成新文件),而不是每次都动态生成 RSS 文件时间 - 这种方法有什么好处吗?