Download the PHP package programster/pgsql-objects without Composer
On this page you can find all versions of the php package programster/pgsql-objects. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download programster/pgsql-objects
More information about programster/pgsql-objects
Files in programster/pgsql-objects
Package pgsql-objects
Short Description A library for interfacing with a PostgreSQL database in PHP. Facilitates the creation of objects that represents tables tables. Objects must have id of type UUID.
License MIT
Homepage https://github.com/programster/package-mysql-objects
Informations about the package pgsql-objects
PostgreSQL Objects Package
This package aims to act as your object-relational-map (ORM) to a PostgreSQL database.
To use this package, we recommend you create two class files for each of your
tables. One should end in the word Table
and represent operations on the
table itself. This should ideally extend the AbstractTable
in the package.
If you need to create something rather special, then one can just implement
the TableInterface
interface. Once you have extended the class, all you have
to do is fill in all of the abstract methods.
The second class you need to create is for a row/object of the table. This
class should extend the AbstractTableRowObject
. Again, just fill in all of
the abstract methods for the package to be able to manage your tables.
Limitations
This package only works with tables that have an id
column of type uuid
.
Key Features
- Save/updates objects to the database for you when you want it to.
- implement an automatica local cache, so you don't re-fetch objects when you don't need to. E.g. if you make a call to MyTable::loadAll() before then trying to load a bunch of objects by ID, then the objects will be returned immediately without having to hit the database because they were all loaded into the cache.
- Supports cloning of the objects - will generate a new UUID for the clone and mark it as not being in the database. It will only be persisted if you save it to the database.
Testing
If you wish to create some changes and run the tests, simply fill in you
PostgreSQL host details into the /testing/settings.php.tmpl
file and rename
it to /testing/settings.php
.
Then run the tests with:
All versions of pgsql-objects with dependencies
programster/pgsql-lib Version 2.0.*
programster/core-libs Version >=2.1 <3.0
ramsey/uuid Version ^4.1
ext-pgsql Version *