За последние 24 часа нас посетили 21407 программистов и 1021 робот. Сейчас ищут 703 программиста ...

Вопрос про паттерн Реестр

Тема в разделе "PHP для профи", создана пользователем Awilum, 19 фев 2021.

  1. Awilum

    Awilum Активный пользователь

    С нами с:
    15 ноя 2009
    Сообщения:
    325
    Симпатии:
    26
    Адрес:
    Earth
  2. Awilum

    Awilum Активный пользователь

    С нами с:
    15 ноя 2009
    Сообщения:
    325
    Симпатии:
    26
    Адрес:
    Earth
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    4.0.0

    PHP:
    1. <?php
    2.  
    3. declare ( strict_types = 1 );
    4.  
    5. namespace Atomastic\Registry;
    6.  
    7. use Atomastic\{
    8.     Arrays\Arrays,
    9.     Macroable\Macroable
    10. };
    11.  
    12. class Registry extends Arrays
    13. {
    14.     use Macroable;
    15.    
    16.     private static
    17.         Registry $instance,
    18.         Arrays $storage;
    19.    
    20.    
    21.     public static function getInstance(): Registry
    22.     {
    23.         static :: $storage ??= new Arrays;
    24.  
    25.         return static :: $instance ??= new self;
    26.     }
    27.    
    28.     protected function __construct() {}
    29.    
    30.     protected function __clone() {}
    31.    
    32.     public function __wakeup(): void {}
    33. }
     
  4. Awilum

    Awilum Активный пользователь

    С нами с:
    15 ноя 2009
    Сообщения:
    325
    Симпатии:
    26
    Адрес:
    Earth
    @MouseZver и да на восьмерку перейду не раньше середины 2022 года
     
  5. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
  6. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    DesignPatternsPHP — Документация DesignPatternsPHP 1.0
     
  7. Awilum

    Awilum Активный пользователь

    С нами с:
    15 ноя 2009
    Сообщения:
    325
    Симпатии:
    26
    Адрес:
    Earth
    И ? думаешь я туда не смотрел? я так же смотрел что этот патер может быть и как синглтон реализовываться тоже
     
  8. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    а зачем ему синглтон, если это чистая статика (что ты там увидишь через new? пустоту?), да ещё и защищённая от new абстрактностью :)
     
  9. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    858
    Симпатии:
    132
    Ну, у Вас класс Arrays реестр по сути, но по мне как тоже не совсем то, чего хотелось бы. Например, когда писал реестр
    1) обязательно описывал интерфейс Registry;
    2) был базовый простой-шустрый реестр;
    3) был древовидный, умеющий разбирать ключ по разделителю и ковырять вглубь вложенного массива.
    Что-то такое получилось https://github.com/donbidon/core-dev/tree/master/src/Registry