单例模式(Singleton Pattern)就是确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。根据这个模式可设计日志记录函数,Demo如下:
<?php
class Logger{
static private $LoggerInstance = NULL;
static function getInstance(){
if(static::$LoggerInstance == NULL){
static::$LoggerInstance = new Logger();
}
return static::$LoggerInstance;
}
public function __construct()
{
echo '已实例化'."<br/>";
}
function log(){
echo md5(uniqid(md5(microtime(true)))).'<br/>';
}
}
Logger::getInstance()->log();
Logger::getInstance()->log();
结果: