/fcphp-controller

Abstract class to FcPhp Controllers

Primary LanguagePHPMIT LicenseMIT

FcPhp Controller

Abstract class to Controller FcPhp

Build Status codecov

PHP Version Packagist Version Total Downloads

How to install

Composer:

$ composer require 00f100/fcphp-controller

or add in composer.json

{
    "require": {
        "00f100/fcphp-controller": "*"
    }
}

How to use

Extends your controller from FcPhp Controller and add your services into Controller using contruct method. After call to service using "getService()" method.

namespace Example
{
    use FcPhp\Controller\Controller;

    class ExampleController extends Controller
    {
        public function __construct($userService, $profileService, $addressService)
        {
            $this->setService('user', $userService);
            $this->setService('profile', $profileService);
            $this->setService('address', $addressService);
        }

        public function findUsers()
        {
            return $this->getService('user')->findAll();
        }

        public function findProfiles()
        {
            return $this->getService('profile')->findAll();
        }

        public function findAddresses()
        {
            return $this->getService('address')->findAll();
        }
    }
}

Controller Callback

use Example\ExampleController;

$instance = new ExampleController(UserService(), ProfileService(), AddressService());

// Callback on find service using "getService()"...
$instance->callback('callbackService', function(string $service, $instance) {

    // Your code here...

});