1DALMP 2===== 3 4**Database Abstraction Layer for MySQL using PHP** 5 60% fat and extremely easy to use. Only connect to database when needed. 7 8Examples and documentation at: http://docs.dalmp.com 9 10 11Clone the repository: 12 13 14 $ git clone https://github.com/nbari/DALMP.git dalmp 15 16 17To Install visit http://docs.dalmp.com/en/latest/Install.html 18 19Thanks 20------ 21 22Many thanks [Navicat](http://www.navicat.com) for supporting Open Source projects. 23 24![navicat](https://raw.githubusercontent.com/nbari/DALMP/master/docs/navicat.jpg) 25 26Details 27------- 28 29* [Dependecy Injector](http://docs.dalmp.com/en/latest/DI.html) (DI) support, load once, trigger when required. 30* [APC](http://docs.dalmp.com/en/latest/cache/APC.html), [Disk](http://docs.dalmp.com/en/latest/cache/disk.html), [Memcache](http://docs.dalmp.com/en/latest/cache/memcache.html), [Redis.io](http://docs.dalmp.com/en/latest/cache/redis.html>) cache support. 31* Group [caching cache](http://docs.dalmp.com/en/latest/cache.html) by groups and flush by groups or individual keys. 32* [Prepared statements](http://docs.dalmp.com/en/latest/prepared_statements.html) ready, support dynamic building queries, auto detect types (i,d,s,b). 33* Secure connections with [SSL](http://docs.dalmp.com/en/latest/Quickstart.html#ssl). 34* [SQLite3 Encryption](http://docs.dalmp.com/en/latest/queue/SQLite.html). 35* Save [sessions in database](http://docs.dalmp.com/en/latest/sessions.html) (mysql/sqlite) or a cache like redis/memcache/apc. 36* Easy to use/install/adapt. 37* Nested [Transactions](http://docs.dalmp.com/en/latest/database/StartTrans.html) (SAVEPOINT / ROLLBACK TO SAVEPOINT). 38* Support connections via [unix_sockets](http://docs.dalmp.com/en/latest/Quickstart.html#example-using-a-socket). 39* SQL [queues](http://docs.dalmp.com/en/latest/queue.html). 40* Export to [CSV](http://docs.dalmp.com/en/latest/database/csv.html). 41* Trace/measure everything enabling the [debugger](http://docs.dalmp.com/en/latest/database/debug.htm). 42* Works out of the box with Cloud databases like [Amazon RDS](http://aws.amazon.com/rds/) or [Google cloud](https://developers.google.com/cloud-sql/). 43* Lazy database connection. Connect only when needed. 44* [PSR-0](http://www.php-fig.org/psr/psr-0/) compliance. 45 46 47Requirements 48------------ 49 50* [PHP](http://www.php.net>) >= 5.4 51* A [MySQL](http://www.mysql.org) server to connect via host or [unix sockets](http://en.wikipedia.org/wiki/Unix_domain_socket). 52 53To use the cache features you need either the redis, memcache or APC extensions 54compiled, otherwise disk cache will be used. 55 56* Redis extension - http://github.com/nicolasff/phpredis 57* Memcache PECL extencsion - http://pecl.php.net/package/memcache 58* APC PECL extension - http://pecl.php.net/package/APC 59 60If you want to store session encrypted then you need SQLite3 Encryption http://sqlcipher.net. 61 62**DALMP** does not use [PDO](http://www.php.net/pdo), so do not worry if your PHP does not have the pdo 63extension. 64 65On [FreeBSD](http://www.freebsd.org) you can install **DALMP** from ports: /usr/ports/databases/dalmp 66