http://php.net/manual/en/mongodb-bson -objectid.construct.php đọc:
Vì vậy, séc có thể là một regex đơn giản:
if(preg_match('/^[0-9a-f]{24}$/i', $id) === 1) {
.....
Hoặc nếu bạn thích sử dụng phương thức khởi tạo ObjectId và làm cho nó trở nên bền vững trong tương lai, hãy làm điều đó với try-catch:
try {
$user = $this->collection->findOne([
'_id'=> new \MongoDB\BSON\ObjectId($id)
]);
if(!$user){ return false; }
return $user;
} catch() {}