O padrão Singleton é utilizado quando não podemos ter mais de uma instância de uma mesma classe. Quando criamos um objeto desta classe e queremos garantir que este objeto seja único em todo o sistema.
Neste padrão usamos um construtor privado para evitar que sejam criadas novas instâncias da classe. Para criar a instância ou caso a instância já tenha sido criada, para utilizá-la , criamos o método público e estático getInstance(), além do atributo $instance, privado e estático, que irá guardar a instância criada.
No método getInstance(), nós verificamos se $instance é igual a null. Caso seja, criamos uma instância da classe e armazenamos em $instance. Caso não, retornamos a instância já existente em $instance.
Abaixo segue um Gist com um exemplo do uso do Singleton em PHP: https://gist.github.com/gustavoalvesdev/fc1f248a643b0705e222f3829acaf318
Rogério Santos
07/04/2021 22:36