Mongodb\BSON\Regex Php: Perform Like Match

Viewed 4146
1 Answers

Remove the regex delimiters since they are not used in MongoDB\BSON\Regex:

$cursor = $collection->find([
    'description' => new MongoDB\BSON\Regex('giov', 'i'),

]);

The answer is quite evident if you follow your first reference link:

The following example lists documents in the zips collection where the city name starts with “garden” and the state is Texas:

<?php

$collection = (new MongoDB\Client)->test->zips;

$cursor = $collection->find([
    'city' => new MongoDB\BSON\Regex('^garden', 'i'),
    'state' => 'TX',
]);

foreach ($cursor as $document) {
   printf("%s: %s, %s\n", $document['_id'], $document['city'], $document['state']);
}
Related