novara / dynamic-readonly-classes
Create objects with constant values based on dynamically passed content.
Installs: 23
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/novara/dynamic-readonly-classes
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(),