This package is abandoned and no longer maintained. The author suggests using the vitexsoftware/ease-core package instead.

An PHP Framework for Ease of writing Applications

1.29 2019-05-16 10:25 UTC

This package is auto-updated.

Last update: 2020-08-05 14:48:41 UTC


EasePHP Framework Logo

EasePHP Framework

Object oriented PHP Framework for easy&fast writing small/middle sized apps.

Source Code Latest Version Software License Build Status Total Downloads Docker pulls Latest stable SensioLabsInsight

Latest Stable Version Total Downloads Latest Unstable Version Latest Unstable Version License Monthly Downloads Daily Downloads


Download or use


composer require vitexsoftware/ease-framework


For Debian, Ubuntu & friends please use repo:

    wget -O -|sudo apt-key add -
    echo deb stable main | sudo tee /etc/apt/sources.list.d/vitexsoftware.list 
    sudo apt update
    sudo apt install ease-framework

In this case please add this to your app composer.json:

    "require": {
        "ease-framework": "*"
    "repositories": [
            "type": "path",
            "url": "/usr/share/php/Ease",
            "options": {
                "symlink": true


To get Docker image:

docker pull vitexsoftware/easephpframework

Framework Constants

  • EASE_APPNAME - common name of application. Mainly used in logs.
  • EASE_LOGGER - one of memory,console,file,syslog,email,std,eventlog or combination "console|syslog"
  • EASE_EMAILTO - recipient for Ease/Logger/ToMail
  • EASE_SMTP - Custom SMTP Settings (JSON Encoded)
  • DB_TYPE - pgsql|mysql|sqlite|...
  • DB_HOST - localhost is default
  • DB_PORT - database port
  • DB_DATABASE - database schema name
  • DB_USERNAME - database user login name
  • DB_PASSWORD - database user password
  • DB_SETUP - database setup command (executed directly after connect)


Twitter Bootstrap page with simple Form

$oPage = new \Ease\TWB\WebPage('Page title');
$form = $oPage->addItem( new \Ease\TWB\Form('ExampleForm') );
$form->addItem(new \Ease\Html\InputTextTag('Name'));
$form->addItem(new \Ease\TWB\SubmitButton('OK', 'success') );


You can use any combination of this logging modules:

  • memory - log to array in memory
  • console - log to ansi sequence capable console
  • file - log to specified file
  • syslog - log to linux syslog service
  • email - send all messages to constant('EASE_EMAILTO') at end
  • std - write messages to stdout/stderr
  • eventlog - log to Windows eventlog
  define('EASE_LOGGER', 'console|syslog');
  $logger = new \Ease\Sand();
  $logger->addStatusMessage('Error Message', 'error');


At first you need initialise create sql user & database with login and password from testing/phinx.yml and initialise testing database by phinx migrate command:

composer update
cd tests
mysqladmin -u root -p create easetest
mysql -u root -p -e "GRANT ALL PRIVILEGES ON easetest.* TO easetest@localhost IDENTIFIED BY 'easetest'"
sudo -u postgres bash -c "psql -c \"CREATE USER easetest WITH PASSWORD 'easetest';\""
sudo -u postgres bash -c "psql -c \"create database easetest with owner easetest encoding='utf8' template template0;\""
../vendor/bin/phinx migrate -e development 
../vendor/bin/phinx migrate -e testing  


Simply run make deb




Apigen Docs:

Modular & Lightweight successor library: