使用PHP中的推文查询MongoDB中的日期范围

时间:2018-01-25 12:48:10

标签: php mongodb twitter

我有文件存储在MongoDB中,每个文件都包含" created_at"看起来像这样:

"created_at" : "Wed Jan 24 15:25:20 +0000 2018"

我无法使用这样的格式进行范围查询。我应该更新所有文件并将其转换为可读日期吗?或者在PHP中有哪种方法,我应该只转换PHP中的日期而不更新/损害MongoDB中的文档。后者似乎更明智,因为我每天都在不停地向我的数据库提供推文流。

1 个答案:

答案 0 :(得分:0)

您应该重新考虑用于存储created_at时间戳的格式。我建议将此数据转换为ISODate(js)/ MongoDB\BSON\UTCDateTime(php)。

使用这种格式,您可以在MongoDB中进行范围查询,而无需在php端进行繁重的工作。

转换数据包括以下步骤:

  • 一次性数据转换(您更新MongoDB中已存在的数据)
  • 更改数据流入以使用新格式添加所有新添加的数据
  • 更改视图组件以处理新格式。

一些相关链接: