mongodb - 如何在MongoDB PHP中查找不区分大小写的值?

标签 mongodb mongodb-query php-mongodb

如何在 MongoDB PHP 中查找不区分大小写的值?

我正在使用以下代码行

$query = ['VehicleNumber' => $arg];
$cursor = $this->collection->find($query);

我想根据VehicleNumber查找数据,但它应该能够根据不区分大小写的arg找到数据。例如,如果表中有包含 JK AB123、JK DE245 等车辆编号的数据。现在,如果 arg 包含 jk Ab123,则应该能够找到该数据。

请帮忙!!!

最佳答案

您应该使用\MongoDB\BSON\Regex ,带有“i”标志(不区分大小写以匹配大小写)。

您还应该对字符串进行转义,以不匹配任何正则表达式特殊字符;为此,您可以使用 preg_quote .

$query = ['VehicleNumber' => new \MongoDB\BSON\Regex( preg_quote($arg),"i")];

关于mongodb - 如何在MongoDB PHP中查找不区分大小写的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52217163/

相关文章:

mongodb - 您如何提取MongoError : E11000 duplicate key found?的错误消息

arrays - $in 需要一个数组作为第二个参数,找到 : missing

php - MongoDB 和 PHP 库游标超时

mongodb - 为什么使用空条件时 $pull 运算符在 MongoDB 上不起作用?

mongodb - $lookup 与 php mongodb

php - 带有 MAMP 的 Mongo PHP 驱动程序 1.2.10

node.js - 使用 NPM 在 Windows 7 Box 上安装 MongoDB 时出错

python - 在 Meteor 中调用 Python 脚本

node.js - Mongodb 更新所有具有唯一 id 的文档

python - 使用 PyMongo 更新集合中字典列表中的字典值