2017 © Pedro Peláez
 

library ease-framework

An PHP Framework for Ease of writing Applications

image

vitexsoftware/ease-framework

An PHP Framework for Ease of writing Applications

  • Tuesday, July 17, 2018
  • by vitex
  • Repository
  • 3 Watchers
  • 6 Stars
  • 4,899 Installations
  • PHP
  • 8 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 10 Versions
  • 20 % Grown

The README.md

EasePHP Framework Logo, (*1)

EasePHP Framework

Object oriented PHP Framework for easy&fast writing small/middle sized apps., (*2)

Source Code Latest Version Software License Build Status Total Downloads Docker pulls Latest stable SensioLabsInsight, (*3)

Latest Stable Version Total Downloads Latest Unstable Version Latest Unstable Version License Monthly Downloads Daily Downloads, (*4)


Installation

Download https://github.com/VitexSoftware/EaseFramework/archive/master.zip or use, (*5)

Composer:

composer require vitexsoftware/ease-framework

Linux

For Debian, Ubuntu & friends please use repo:, (*6)

    wget -O - http://v.s.cz/info@vitexsoftware.cz.gpg.key|sudo apt-key add -
    echo deb http://v.s.cz/ 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:, (*7)

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

Docker:

To get Docker image:, (*8)

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)

Example

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') );
$oPage->draw();

Logging

You can use any combination of this logging modules:, (*9)

  • 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, (*10)

    define('EASE_LOGGER', 'console|syslog');
    $logger = new \Ease\Sand();
    $logger->addStatusMessage('Error Message', 'error');
    

Testing

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:, (*11)

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  

Building

Simply run make deb, (*12)

Links

Homepage: https://www.vitexsoftware.cz/ease.php, (*13)

GitHub: https://github.com/VitexSoftware/EaseFramework, (*14)

Apigen Docs: https://www.vitexsoftware.cz/ease-framework/, (*15)

Modular & Lightweight successor library: https://github.com/VitexSoftware/ease-core, (*16)

The Versions