3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php namespace Sett\Specification\Http { interface StatusInterface { public function __construct ( int $code = 200, string $message = '' ); public function getCode () : int; public function getMessage () : string; public function __toString () : string; } } namespace Sett\Implementation\Http { use Sett\Specification\Http\StatusInterface; class Status implements StatusInterface { protected $code = 200; protected $message = ''; public function __construct ( int $code = 200, string $message = '' ) { $this->code = $code; $this->message = $message; } public function getCode () : int { return $this->code; } public function getMessage () : string { return $this->message; } public function __toString () { return "{$this->code} {$this->message}"; } } echo new \Sett\Implementation\Http\Status(404, "Not found"); }
based on UR3Xg
Output for 7.0.0 - 7.2.0
Fatal error: Declaration of Sett\Implementation\Http\Status::__toString() must be compatible with Sett\Specification\Http\StatusInterface::__toString(): string in /in/0erbH on line 19
Process exited with code 255.
Output for 5.3.19 - 5.6.28
Fatal error: Default value for parameters with a class type hint can only be NULL in /in/0erbH on line 4
Process exited with code 255.