camelot / doctrine-postgres-bundle
PostgreSQL specific functionality for Pentangle
Installs: 9 406
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 1
Open Issues: 1
Type:symfony-bundle
pkg:composer/camelot/doctrine-postgres-bundle
Requires
- php: ^7.4 || ^8.0
- ext-pdo_pgsql: *
- doctrine/dbal: ^2.9 || ^3.0
- doctrine/orm: ^2.7 || ^3.0
- martin-georgiev/postgresql-for-doctrine: ^1.5 || ^2
Requires (Dev)
- camelot/coding-style: ^3.0
- dama/doctrine-test-bundle: ^6.2
- doctrine/doctrine-fixtures-bundle: ^3.3
- friendsofphp/php-cs-fixer: ^3.0
- phpunit/phpunit: ^9.5
- psalm/plugin-phpunit: ^0.16
- symfony/dotenv: ^6.0
- symfony/framework-bundle: ^6.0
- symfony/phpunit-bridge: ^6.0
- symfony/yaml: ^6.0
- vimeo/psalm: ^4.17
This package is auto-updated.
Last update: 2025-10-23 11:01:24 UTC
README
NOTE: For legacy PHP support (7.2+) please use the 1.0 branch.
This bundle provides Doctrine support for some specific PostgreSQL 9.4+ features for Symfony projects:
- Support of JSONB and some array data-types (at present only integers, TEXT and JSONB)
- Implementation of the most commonly used functions and operators when working with array and JSON data-types Functions for text search
Libraries used:
Installation
Applications that use Symfony Flex
Open a command console, enter your project directory and execute:
composer require camelot/doctrine-postgres-bundle
Applications that don't use Symfony Flex
Step 1: Download the Bundle
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
composer require camelot/doctrine-postgres-bundle
This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.
Step 2: Enable the Bundle
Then, enable the bundle by adding it to the list of registered bundles
in the config/bundles.php file of your project:
// config/bundles.php return [ // ... Camelot\DoctrinePostgres\CamelotDoctrinePostgresBundle::class => ['all' => true], ];
Using
Available DBAL Types
jsonbjsonb[]smallint[]integer[]bigint[]text[]
Available String Functions
ALL_OFANY_OFARRAY_APPENDARRAY_CARDINALITYARRAY_CATARRAY_DIMENSIONSARRAY_LENGTHARRAY_NUMBER_OF_DIMENSIONSARRAY_PREPENDARRAY_REMOVEARRAY_REPLACEARRAY_TO_JSONARRAY_TO_STRINGCAST()CONTAINSDATE_PART()GREATESTILIKEIN_ARRAYIS_CONTAINED_BYJSON_ARRAY_LENGTHJSONB_ARRAY_ELEMENTSJSONB_ARRAY_ELEMENTS_TEXTJSONB_ARRAY_LENGTHJSONB_EACHJSONB_EACH_TEXTJSONB_EXISTSJSONB_INSERTJSONB_OBJECT_KEYSJSONB_SETJSONB_STRIP_NULLSJSON_EACHJSON_EACH_TEXTJSON_GET_FIELDJSON_GET_FIELD_AS_INTEGERJSON_GET_FIELD_AS_TEXTJSON_GET_OBJECTJSON_GET_OBJECT_AS_TEXTJSON_OBJECT_KEYSJSON_STRIP_NULLSLEASTMAKE_DATE()OVERLAPSSTRING_TO_ARRAYTO_CHAR()TO_JSONTO_JSONBTO_TSQUERYTO_TSVECTORTSMATCH
See Common errors when using ILIKE, CONTAINS, IS_CONTAINED_BY and other operator-like functions for tip(s) on using the functions.