Делая аутентификацию в Yii2 вместе с mongodb столкнулся с ошибкой:
unknown operator:
$oid ↵ Caused by: MongoDB\Driver\Exception\ConnectionException
При чем ошибка эта выпадала в виде Fatal error, а значит, останавливала работу всего приложения. Отследить при каких условиях она появляется так и не получилось, да и необходимости в этом особо не было.
Ошибка эта возникает в методе User::findIdentity($id) лишь в некоторых случаях. Связано это с тем, что сам метод иногда принимает в качестве $id либо строку, либо объект MongoId.
Чтобы вылечить вышеуказанную ошибку, достаточно в методе User::getId() внести некоторые правки, а именно:
public function getId()
{
return (string)$this->getPrimaryKey();
}
То есть мы просто всегда возвращаем именно строку, ту самую которая хранится в MongoId объекте .