3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Question { public function __construct(AnswerInterface $answer) { echo "What is 2 + 2?\n"; $answer = $answer->get()->the()->answer(); if ($answer instanceof AnswerInterface) { echo $answer . PHP_EOL; } } } interface AnswerInterface { public function get(); public function the(); public function answer(); } // start editing here class Answer implements AnswerInterface { public function __construct(){ return 4; } public function get(){ return $this; } public function the(){ return $this; } public function answer(){ return $this; } } // end editing here $answer = new Answer; $question = new Question($answer);
Output for git.master, git.master_jit, rfc.property-hooks
What is 2 + 2? Fatal error: Uncaught Error: Object of class Answer could not be converted to string in /in/ve4YL:10 Stack trace: #0 /in/ve4YL(41): Question->__construct(Object(Answer)) #1 {main} thrown in /in/ve4YL on line 10
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
38.39 ms | 401 KiB | 8 Q