SingletonTrait.php 395 B

12345678910111213141516171819
  1. <?php
  2. namespace Src\Traits;
  3. //Позволяет для любого класса организовать паттерн Одиночка
  4. trait SingletonTrait
  5. {
  6. private static self $instance;
  7. public static function single(): self
  8. {
  9. if (empty(self::$instance)) self::$instance = new static();
  10. return self::$instance;
  11. }
  12. private function __construct()
  13. {
  14. }
  15. }