Erzeugt genau eine Instanz eines Objektes.
    
    
    singleton.php
    use Util\Logger;
    function autoloader($class) {
        $newName = str_replace('\\', '/', $class);
        $path = "lib/$newName.php";
        if (!class_exists($class)) {
            if (file_exists($path)) {
                require $path;
            }
        }
    }
    spl_autoload_register(autoloader);
    ini_set('display_errors', true);
    Logger::getInstance()->log("Das ist eine Testnachricht");
    Logger::getInstance()->log("Noch eine Testnachricht");
    
    lib/Util/Logger.php
    namespace Util;
    class Logger
    {
        private static $instance = null;
        private function __construct()
        {}
        public static function getInstance() {
            if (self::$instance == null) {
                self::$instance = new Logger();
            }
            return self::$instance;
        }
        public function log($message)
        {
            printf("Logged: %s<br>", $message);
        }
    }