Extension of php-callback format
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc
errors
tests
.gitattributes
.gitignore
.travis.yml
CHANGELOG.md
Callback.php
Helper.php
LICENSE
README.md
composer.json
cs.sh
index.php
phpmd.sh
phpmd.xml.dist
phpunit.xml.dist

README.md

axy\callbacks: the callback extended format

Latest Stable Version Minimum PHP Version Build Status Coverage Status License

  • The library does not require any dependencies.
  • Tested on PHP 5.4+, PHP 7, HHVM (on Linux), PHP 5.5 (on Windows).
  • Install: composer require axy/callbacks.
  • License: MIT.

Documentation

Examples

function sum($a, $b)
{
    return $a + $b;
}

Standard callback:

$callback = new Callback('sum');

echo $callback(2, 2);

Binging arguments:

$callback = new Callback('sum', [3]);

echo $callback(4); // 3 + 4 = 7

Binging context:

class MyClass
{
    public function getEventHandler()
    {
        return new Callback([$this, 'onEvent'], ['click'], true);
    }

    private function onEvent($event)
    {
        echo 'Event '.$event.'!';
    }
}

$obj = new MyClass();
$handler = $obj->getEventHandler();

// click
$handler(); // "Event click!". Private method was called