3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<? class Foo { public function foo() { return "foo"; } } class Bar { public function foo() { return "foo"; } } $a = [Foo, Bar]; $b = new $a[1]; echo $b->foo();
based on WlNA8
Output for 7.2.6
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Foo has a deprecated constructor in /in/HfmDf on line 3 Warning: Use of undefined constant Foo - assumed 'Foo' (this will throw an Error in a future version of PHP) in /in/HfmDf on line 19 Warning: Use of undefined constant Bar - assumed 'Bar' (this will throw an Error in a future version of PHP) in /in/HfmDf on line 19 foo
Output for 7.0.0 - 7.1.20
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Foo has a deprecated constructor in /in/HfmDf on line 3 Notice: Use of undefined constant Foo - assumed 'Foo' in /in/HfmDf on line 19 Notice: Use of undefined constant Bar - assumed 'Bar' in /in/HfmDf on line 19 foo
Output for 5.4.2 - 5.6.28
Notice: Use of undefined constant Foo - assumed 'Foo' in /in/HfmDf on line 19 Notice: Use of undefined constant Bar - assumed 'Bar' in /in/HfmDf on line 19 foo
Output for 5.3.18 - 5.3.29
<? class Foo { public function foo() { return "foo"; } } class Bar { public function foo() { return "foo"; } } $a = [Foo, Bar]; $b = new $a[1]; echo $b->foo();