Я хочу найти частичное совпадение имени и фамилии - например, в sql
f_name LIKE J% OR l_name LIKE S%
будет соответствовать Джону Смиту, Джону Генри или Гарри Смиту.
Я предполагаю, что я может потребоваться использование оператора «$ или»,
У меня есть это до сих пор, и я считаю, что он выполняет часть LIKE% правильно, но я считаю, что он выполняет поиск «И» (что означает, что он ищет f_name LIKE J% И l_name LIKE S%, чтобы соответствовать только Джону Смиту):
$name1="J";
$name2="S";
$cursor = $this->clientCollection->find(array('f_name' => new MongoRegex('/^'.$name1.'/i'), 'l_name' => new MongoRegex('/^'.$name2.'/i') ));
Примечание: Это будет соответствовать содержащемуся в% J%
MongoRegex('/'.$name1.'/i')
. Соответствие начинается с (обратите внимание на добавленный ^), как в J%
MongoRegex('/^'.$name1.'/i')