پترن Singleton اطمینان حاصل میکند که از یک کلاس تنها یک شیء ایجاد میشود. این پترن معمولاً زمانی استفاده میشود که نیاز است یک منبع مشترک در کل برنامه وجود داشته باشد.
ویژگیهای اصلی:
- ایجاد تنها یک نمونه از کلاس
- دسترسی عمومی و سراسری به نمونه ایجاد شده
مثال ساده:
class Singleton {
private static $instance = null;
private function __construct() {}
public static function getInstance() {
if (self::$instance === null) {
self::$instance = new Singleton();
}
return self::$instance;
}
}
$instance = Singleton::getInstance();