- Output for 5.5.24 - 5.5.30, 5.6.8 - 5.6.15
- Parse error: syntax error, unexpected 'class' (T_CLASS) in /in/o4Gai on line 43
Process exited with code 255.
<?php
class Container {
protected $items;
public function __construct()
{
$this->items = [];
}
public function exists($name)
{
return isset($this->item[$name]);
}
public function get($name)
{
if (!isset($this->item[$name])) {
throw new RuntimeException('Item "' . $name . '" not found');
}
return $this->item[$name];
}
public function register($name, $item, $replace = false)
{
if (isset($this->item[$name]) and $replace === false) {
throw new RuntimeException('Item "' . $name . '" already exists');
}
$this->item[$name] = $item;
return $this;
}
public function unregister($name)
{
if (!isset($this->item[$name])) {
throw new RuntimeException('Item "' . $name . '" not found');
}
unset($this->item[$name]);
}
}
$container = new Container();
$container->register('ultimate.question', new class(42) {
private $value;
public function __construct($value)
{
$this->value = $value;
}
public function value()
{
return $this->value;
}
});
;
if ($container->exists('ultimate.question')) {
$answer = $container->get('ultimate.question')
echo "The answer is: ", $answer->value(), "\n";
} else {
echo "Come back in 7,500,000 years\n";
}