找不到类MongoRegex()

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.


Source: https://github.com/jenssegers/laravel-mongodb

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().