novara / dynamic-readonly-classes
Create objects with constant values based on dynamically passed content.
v1.0.1
2024-10-12 11:49 UTC
Requires
- php: >=8.3
- novara/base: ^1.3.1
Requires (Dev)
- phpunit/phpunit: ^11.4
- squizlabs/php_codesniffer: ^3.10.3
README
Dynamic Readonly Classes
Misusing anonymous classes in the best way possible.
Installation
composer require novara/dynamic-readonly-classes "*"
Usage
DRCFactory::create(null, [ 'Foo' => 'Bar', ])::Foo // returns 'Bar'
This is useful for extending classes:
// SomeClass.php abstract class SomeClass { public function test(): string { return static::TEST; } } // Other code DRCFactory::create(SomeClass::class, [ 'TEST' => 'funny text here', ])->test(),