I trying example from php.net: - http://php.net/manual/en/class.mongoregex.php
when performing a code there is a mistake:
Class App\Http\Controllers\MongoRegex not found
But new MongoClient()
work fine.
So now it would look like this:
new \MongoDB\BSON\Regex("/.*doe/i")
And if you're using Laravel with Jenssegers package in version 3+, then you can query like this:
User::where('name', 'regex', new \MongoDB\BSON\Regex("/.*doe/i"))->get();
or even better like this:
User::where('name', 'regexp', '/.*doe/i'))->get();
The line above will automatically convert string into proper Regex object.
MongoRegex()
is for mongo
extension and it not availables for mongodb
extension. It seems you use mongodb
extension. So you should use MongoDB\BSON\Regex()
instead of MongoRegex()
.