sql >> Base de Datos >  >> NoSQL >> MongoDB

MongoDB verifica si la identificación es un BSON PHP válido

http://php.net/manual/en/mongodb-bson -objectid.construct.php lee:

Entonces la verificación puede ser una simple expresión regular:

if(preg_match('/^[0-9a-f]{24}$/i', $id) === 1) {
.....

O si prefiere apegarse al constructor de ObjectId y prepararlo para el futuro, hágalo con try-catch:

try {
    $user = $this->collection->findOne([
     '_id'=> new \MongoDB\BSON\ObjectId($id)
   ]);
   if(!$user){ return false; }
   return $user;
} catch() {}