PHPackages                             zieglerh/pimcore-event-manager - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. zieglerh/pimcore-event-manager

ActivePimcore-bundle[Utility &amp; Helpers](/categories/utility)

zieglerh/pimcore-event-manager
==============================

Bind events via PHP Attributes in EventSubscribers

v1.0(2y ago)12.1kGPL-3.0-or-laterPHPPHP ^8.0

Since Mar 10Pushed 2y ago1 watchersCompare

[ Source](https://github.com/zieglerh/pimcore-event-manager)[ Packagist](https://packagist.org/packages/zieglerh/pimcore-event-manager)[ RSS](/packages/zieglerh-pimcore-event-manager/feed)WikiDiscussions main Synced 3d ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

EventManagerBundle
==================

[](#eventmanagerbundle)

Subscribe to Events via PHP Attribute Tags without any configuration and only via function arguments

- [EventManagerBundle](#eventmanagerbundle)
    - [Installation](#installation)
        - [Composer](#composer)
    - [Benefits](#benefits)
    - [Usage](#usage)
        - [Examples](#examples)
            - [DataObjects](#dataobjects)
            - [Event argument](#event-argument-)
            - [Any event](#any-event)
            - [Multiple classes](#multiple-classes)
        - [Event arguments](#event-arguments)
    - [Solving problems](#solving-problems)
        - [Good practices](#good-practices)
        - [General mistakes](#general-mistakes)
        - [Debugging](#debugging)

Installation
------------

[](#installation)

### Composer

[](#composer)

```
composer require zieglerh/pimcore-event-manager-bundle:^1.0
```

Benefits
--------

[](#benefits)

- define EventSubscribers simple with PHP Attributes
- subscribe to only used events
- caching via symfony build cache

Usage
-----

[](#usage)

- create an EventSubscriber class and implement `EventManagerBundle\EventSubscriber\EventSubscriberInterface`
- make sure your class folder is defined in services.yml
- use `EnabledTrait` in your class
- create a function and define function Properties with one or more events
- the function arguments can be the event subject or the event object

```
#[Event(DocumentEvents::PRE_ADD)]
#[Event(DocumentEvents::PRE_UPDATE)]
public function check(Document\Link $link): void
```

To speed up bulk tasks, you can enable and disable the EventSubscriber from anywhere via static functions.

### Examples

[](#examples)

#### DataObjects

[](#dataobjects)

```
