/
aletoropov
/
php_training
Обзор
Документация
Войти
/
aletoropov
/
php_training
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
patterns/Singleton/Singleton.php
41 строка
1 KB
Alexandr
Изменение структуры каталогов
17 дек 2023, 13:57
17 дек 2023, 13:57
be7b570
Код
Авторство
О чём код?
<?php /** * Шаблон - Singleton. * Одиночка (Singleton) относится к порождающим паттернам, гарантирует, что у класса * есть только один экземпляр, и предоставляет к нему глобальную точку доступа. * * @author Toropov Alexandr <toropovsite@yandex.ru> */ class Singleton { static private $self = null; /** * Приватный конструктор для запрета создания объекта класса. */ private function __construct() {} /** * Пустой приватный метод clone для запрета клонирования объекта */ private function __clone() {} private function __wakeup() {} /** * Создаем объект класса и возвращаем его. * * @return Singleton */ public static function getInstance(): Singleton { if (self::$self == null) { self::$self = new Singleton(); } return self::$self; } }