discophp/framework

php framework

Installs: 117

Dependents: 1

Stars: 7

Watchers: 2

Language: PHP

2.3 2015-05-28 17:52 UTC

README

Build Status test Stable Version Total Downloads Latest Unstable Version License

This is the core code that powers the Disco PHP framework.

For the application project wrapper head over to: github.com/discophp/project

What Disco?

The Disco PHP Framework is empowered by proven software design principles paired with modern tactics enabled by new native PHP Class manipulations available in PHP 5.4.0 and above.

At its core is a powerful dependency injection (DI) and Inversion of Control (IoC) container which is built on top of the Pimple Container. The framework is a MVC esque (Model View Controller) segregated framework.

RESTful Routing like it should be

Let the Disco Router class dispell the pains of rewrite rules, filtering, variable extraction, handling HTTPS, and authenticated browsing.

Enjoy Facades and Inversion of Control

With Discos default Facades and the Disco inversion of control container development has looked cleaner or been more maintainable.

Register services in the container

    App::make('service',function(){
        return new class;
    });

    //OR

    App::make('service','namespace/class');

Registering Factory services

    App::as_factory('factory','factory');

Registering protected services

    App::as_protected('rand',function(){
        return rand();
    });
Work with a service from the container, even if its not registered
    App::with('class')->method($arg);
Dependency Injection

When services are instianted from the container if their constructors specify other classes as paramaters, Disco will resolve those classes out of the container and pass their refrences to the constructor as arguements

    public function __construct(SomeClass $c1,SomeClass2 $c2){
        $this->c1 = $c1;
        $this->c2 = $c2;
    }

Default Facades shipped with Disco

Disco uses Composer for Dependency Management and autoloading, so relax, this will be easy

Diso leverages Composer for maintaining youre applications library dependencies and Class autoloading. If you used composer before then you will know how easy this makes life, if not you're in for a real treat.

Learn about installing the Disco PHP Framework using composer

Development level and Production level configuration files for distrubuted development and ease of maintanance

You'll enjoy how easy it is to configure Disco and the ability to differentiate configuration based on the applications environment.