PHP Classes

File: README.md

Recommend this page to a friend!
  Classes of Kjell-Inge Gustafsson   PHP Hook System Manager   README.md   Download  
File: README.md
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: PHP Hook System Manager
Register and invoke hook callback functions
Author: By
Last change: 1.0.4
Date: 3 years ago
Size: 3,366 bytes
 

Contents

Class file image Download

> Class HookMgr manages PHP hooks > A hook is a (HookMgr) key for invoking callable(s)

A callable can be * simple function * anonymous function * instantiated object+method : \[ $object, 'methodName' ] * class name and static method : \[ 'namespaceClassName', 'methodName' ] * instantiated object, class with (magic) __call method : \[ $object, 'someMethod' ] * class name, class with (magic) __callStatic method : \[ 'namespaceClassName', 'someMethod' ] * instantiated object, class with (magic) __invoke method : $object

Define a hook with callable

HookMgr::addAction( $hook, $callable );

Invoke callable using hook

$result = HookMgr::apply( $hook );

Methods

* Add single hook with single callable, _syntax_only_ callable check
* ```hook``` _string_  
* ```callable``` _callable_
* Throws InvalidArgumentException
* static

  • Add single hook invoking an array of callables
  • Note, if invoked with arguments, arguments are used for all callables
  • 
    
  • Throws InvalidArgumentException
  • static
* Set all hooks, each for invoking single or array of callables
`actions` _array_( hook => callable(s) )
* Throws InvalidArgumentException
* static

---

  • Invoke 'hook' action(s), return (last) result
  • 
    
  • * Opt arguments are used in all hook invokes * To use an argument by-reference, use ```HookMgr::apply( 'hook', [ & $arg ] );```
  • Return _mixed_
  • Throws RuntimeException
  • static

* Return 
  * count of hooks
  * count of callables for hook
  * not found hook return 0
* ```hook``` _string_  
* Return bool
* static

  • 
    
  • Return bool, true if hook is set
  • static
* Return array callables for hook, not found return []
* ```hook``` _string_  
* Return _callable\[]_
* static

  • Return _array_ (string[]) hooks
  • static
* Clear (remove) all hooks with callables
* static


  • Remove single hook with callable(s)
  • 
    
  • static

* Return _string_ nice rendered hooks with callable(s)
* static

###### Sponsorship

Donation using <a href="https://paypal.me/kigkonsult?locale.x=en_US" rel="nofollow">paypal.me/kigkonsult</a> are appreciated. 
For invoice, <a href="mailto:ical@kigkonsult.se">please e-mail</a>.

###### INSTALL

composer require kigkonsult/hookmgr:dev-master


Composer, in your `composer.json`:

{

"require": {
    "kigkonsult/hookmgr": "dev-master"
}

}


Composer, acquire access

use Kigkonsult\HookMgr\HookMgr; ... include 'vendor/autoload.php';



Otherwise , download and acquire..

use Kigkonsult\HookMgr\HookMgr; ... include 'pathToSource/kigkonsult/HookMgr/autoload.php';



###### Support

For support go to [github.com HookMgr]


###### License

This project is licensed under the LGPLv3 License


[Composer]:https://getcomposer.org/
[github.com HookMgr]:https://github.com/iCalcreator/HookMgr