protected function getId(&$object)
{
if (is_array($object)) {
if (isset($object['_id']) && $object['_id']) {
return $object['_id'];
}
return $object['_id'] = new ObjectID();
}
if (is_object($object) && !$object instanceof ObjectID) {
if (isset($object->_id) && $object->_id) {
return $object->_id;
}
return $object->_id = new ObjectID();
}
return $object;
}