<?php namespace Yiisoft\EventDispatcher\Provider; abstract class AbstractProviderConfigurator { protected function attach(callable $listener, string $eventClassName = ''): void { throw new \RuntimeException("Method 'attach' does not exist."); } } class Provider extends AbstractProviderConfigurator { private $providers = []; protected function attach(callable $listener, string $eventClassName = ''): void { $this->providers[$eventClassName] = $listener; } public function getProviders(): array { return $this->providers; } } class MyProvider extends Provider { public function attach(callable $listener, string $eventClassName = ''): void { parent::attach($listener, $eventClassName); } } $provider = new MyProvider(); $provider->attach(function () { return true; }, 'MyEvent'); var_dump($provider->getProviders());
You have javascript disabled. You will not be able to edit any code.