3v4l.org

run code in 300+ PHP versions simultaneously
<?php abstract class P { public abstract function foo(): string; }; class C1 extends P { public function foo(): string { return "C1"; } }; class C2 extends P { public function foo(): string { return "C2"; } }; $v1 = Vector { new C1(), new C1(), }; $v2 = Vector { new C2(), new C2(), }; function bC1(Vector<C1> $vec) { bP($vec); }; function bC2(Vector<C2> $vec) { bP($vec); }; function bP(Vector<P> $vec) { print_r($vec); }; bC1($v1); bC2($v2);
Output for 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.32
Parse error: syntax error, unexpected ':', expecting ';' or '{' in /in/Te3jg on line 3
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Parse error: parse error, unexpected ':', expecting '{' or ';' in /in/Te3jg on line 3
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_CLASS in /in/Te3jg on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.3.11, 4.4.0 - 4.4.1
Parse error: parse error, unexpected T_CLASS in /in/Te3jg on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/Te3jg on line 3
Process exited with code 255.

preferences:
270.28 ms | 1399 KiB | 123 Q