hoathis / symfony-ruler-bundle
The Hoa\Ruler Symfony2 bundle.
Installs: 4 753
Dependents: 0
Suggesters: 0
Security: 0
Stars: 15
Watchers: 11
Forks: 4
Open Issues: 1
Type:symfony-bundle
Requires
- php: >=5.5
- hoa/ruler: ~2.0
- symfony/framework-bundle: ~2.5|~3.0
This package is auto-updated.
Last update: 2021-09-20 08:34:07 UTC
README
Hoa is a modular, extensible and structured set of PHP libraries. Moreover, Hoa aims at being a bridge between industrial and research worlds.
Hoathis\SymfonyRulerBundle
Integrates Hoa\Ruler
in Symfony.
Installation
With Composer, to include this bundle into your
dependencies, you need to require
hoathis/symfony-ruler-bundle
:
{ "require": { "hoathis/symfony-ruler-bundle": "~0.0" } }
And add RulerBundle
to your AppKernel
:
// app/AppKernel.php class AppKernel extends Kernel { // … public function registerBundles() { $bundles = array( // … new Hoathis\SymfonyRulerBundle\HoathisSymfonyRulerBundle(), ); // … } }
Quick usage
Ruler service
The RulerBundle
defines a hoathis.ruler
service that can be used as
described in Hoa\Ruler
's documentation.
public function indexAction(Request $request) { // 1. Write a rule. $ruler = $this->get('hoathis.ruler'); $rule = 'group in ["customer", "guest"] and points > 30'; // 2. Create a context. $context = $ruler->getNewContext(); $context['group'] = 'customer'; $context['points'] = function () { return 42; }; // 3. Assert! var_dump( $ruler->assert($rule, $context) // bool(true) ); }
Profiler
When the debug mode is enabled, all assertions are logged and displayed in the web profiler:
Configuration reference
hoathis_symfony_ruler: debug: %kernel.debug%
License
Hoa is under the New BSD License (BSD-3-Clause). Please, see
LICENSE
.