public static function init($options) { if (empty($options)) { return false; } // Register custom data types. Type::addType('json', 'FA\\Doctrine\\Type\\Json'); Type::addType('unixdatetime', 'FA\\Doctrine\\Type\\UnixDateTime'); Type::addtype('binary_uuid', 'FA\\Doctrine\\Type\\BinaryUuid'); Type::addtype('ip_integer', 'FA\\Doctrine\\Type\\IpAddrInteger'); Type::overrideType('array', 'FA\\Doctrine\\Type\\SoftArray'); Type::overrideType('datetime', 'FA\\Doctrine\\Type\\UTCDateTime'); // Fetch and store entity manager. $em = self::getEntityManager($options); $conn = $em->getConnection(); $platform = $conn->getDatabasePlatform(); $platform->markDoctrineTypeCommented(Type::getType('json')); $platform->markDoctrineTypeCommented(Type::getType('unixdatetime')); $platform->markDoctrineTypeCommented(Type::getType('binary_uuid')); $platform->markDoctrineTypeCommented(Type::getType('ip_integer')); return $em; }