我有一个日期保存为像这样的字符串tdate:“2016-11-26 2:23:11”在
mongodb.我想要计算2016-11-26这个日期的所有对象.
这是我尝试使用
PHP但没有运气的方式.
date_authenticated的格式为“Y-m-d H:i:s”,而我希望白天得到所有对象,其格式为“Y-m-d”
function count_auth($tdate) {
$collection = 'mycollection';
return $this->db->{$collection}->count(array('date_authenticated' => $tdate));
}
最佳答案 如果您已将日期保存为字符串,则可以使用MongoRegex查找条目,如
PHP mongo find field starts with中所述.在您的情况下,它应该类似于:
$startsWithRegex = '/^2016-11-26/';
$this->db->{$collection}->count(['date_authenticated' => array('$regex'=>new MongoRegex($startsWithRegex))]);
但是我建议您阅读Find objects between two dates MongoDB,因为如果您正确处理日期,您可以执行更好的查询.