<?php
class Loader {
private static $instances;
public static function get_instance($class) {
if(!isset(self::$instances[$class])) {
self::$instances[$class] = new $class();
}
return self::$instances[$class];
}
public static function debug() { print_r(self::$instances); }
}
class One{ public function __toString() { return 'One'; } }
class Two{ public function __toString() { return 'Two'; } }
class Foo{ public function __toString() { return 'Foo'; } }
$foo = Loader::instance('Foo');
$one = Loader::instance('One');
$two = Loader::instance('Two');
Loader::debug();
Fatal error: Uncaught Error: Call to undefined method Loader::instance() in /in/NNQSq:19
Stack trace:
#0 {main}
thrown in /in/NNQSq on line 19
Process exited with code 255.
Fatal error: Call to undefined method Loader::instance() in /in/NNQSq on line 19
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/NNQSq on line 3
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/NNQSq on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/NNQSq on line 3
Process exited with code 255.