Psalm
Get started
Documentation
Paid support
Plugins
Blog
GitHub
<?php class Factory { public function __invoke( ContainerInterface $container ){ (new FooForm())->setInputFilter( $container->getInputFilter() ); (new BarForm())->setInputFilter( $container->getInputFilter() ); } } interface InputFilterInterface { } interface InputInterface { } class ImplementedInputFilter implements InputFilterInterface, InputInterface { } class ContainerInterface { public function getInputFilter(): InputFilterInterface | InputInterface { return new ImplementedInputFilter(); } } class Form { public function setInputFilter(InputFilterInterface $inputFilter): Form { return $this; } } class FooForm extends Form { } class BarForm extends Form { }
Snippet created on March 28 2024 at 13:22 UTC
Settings
Get link