Supponiamo che tu abbia un oggetto che è unico e che è utilizzato da tutte le altre classi e funzioni ... qualcosa come $application
.Metodo globale vs funzione vs classe statica
Come si accede a questo oggetto nelle proprie funzioni?
utilizzando una variabile globale in ognuno di voi funzioni:
global $application; $application->doStuff();
creazione di una funzione, come
application()
che crea un'istanza l'oggetto in una variabile statica e lo restituisce; quindi utilizzare questa funzione in tutto il mondo è necessario accedere all'oggetto:application()->doStuff();
creare una cosa Singleton, come un metodo statico all'interno della classe di oggetti che restituisce l'unico caso, e utilizzare questo metodo per accedere all'oggetto:
Application::getInstance()->doStuff();
KingCrunch & skwee: Passare l'oggetto applicazione come argomento di ogni funzione/classe in cui è necessario
... public function __construct(Application $app, ...){ ....
Se ci sono altre opzioni per favore pubblicali. Mi chiedo quale di queste opzioni sia la "best practice" più efficiente/considerata.
Hai una domanda specifica o stai solo cercando di fare una lista? –