3v4l.org

run code in 300+ PHP versions simultaneously
<?php /* Challenge 2: Implement AnswerInterface and get Question to echo "4". */ 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 { function get(){ return $this->the(); } function the(){ return $the->answer(); } function answer(){ return 4; } } // end editing here $answer = new Answer; $question = new Question($answer);
Output for git.master, git.master_jit, rfc.property-hooks
What is 2 + 2? Warning: Undefined variable $the in /in/ogGdf on line 34 Fatal error: Uncaught Error: Call to a member function answer() on null in /in/ogGdf:34 Stack trace: #0 /in/ogGdf(31): Answer->the() #1 /in/ogGdf(11): Answer->get() #2 /in/ogGdf(45): Question->__construct(Object(Answer)) #3 {main} thrown in /in/ogGdf on line 34
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:
37.29 ms | 401 KiB | 8 Q