3v4l.org

run code in 300+ PHP versions simultaneously
<?php abstract class Result { private final function __construct() { } public static function success() { return new Success(); } public static function failure() { return new Failure(); } } final class Success extends Result { public static function fakeIt() { return unserialize('O:7:"Success":0:{}'); } } final class Failure extends Result { } var_dump(Result::success()); var_dump(Result::failure()); var_dump(Success::fakeIt());

preferences:
45.7 ms | 1612 KiB | 5 Q