3v4l.org

run code in 300+ PHP versions simultaneously
<?php #[Attribute(Attribute::TARGET_CLASS | Attribute::IS_REPEATABLE)] class FooAttribute { function __construct(public string $value) {} } #[FooAttribute('a')] #[FooAttribute('b')] class Foo {} var_dump( array_map( fn ($ar) => $ar->newInstance(), (new ReflectionClass(Foo::class))->getAttributes(FooAttribute::class) ) );
Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
array(2) { [0]=> object(FooAttribute)#2 (1) { ["value"]=> string(1) "a" } [1]=> object(FooAttribute)#5 (1) { ["value"]=> string(1) "b" } }
Output for 7.4.0 - 7.4.33
Parse error: syntax error, unexpected 'public' (T_PUBLIC), expecting variable (T_VARIABLE) in /in/enf8M on line 5
Process exited with code 255.

preferences:
131.7 ms | 401 KiB | 121 Q