2010-04-27 9 views
6

Attualmente sto usando questo metodo:C'è un modo per scoprire quante volte una classe è stata istanziata in php?

class Foo { 
    private static $num_instances = 0; 

    function __construct() { 
     self::$num_instances++; 
    } 
} 

che sembra funzionare, ma mi chiedo se c'è una costruito nel modo ....

+5

quello che mi è sembrato l'unica via dalla mia testa. Una rapida ricerca su google e php.net non mi offre un'altra soluzione oltre a questo. A proposito, potresti voler decrementare il numero quando '__destruct()' -ing – mauris

+0

Non penso che PHP abbia alcun motivo per registrare tali informazioni. Sono curioso. Ne hai un bisogno pratico al momento? – webbiedave

+0

Non c'è altro modo – Franco

risposta

0

Sarei sorpreso se ce n'è uno.
A mio parere sarebbe un sovraccarico, se si conta sempre la quantità di istanze create.

0

È sempre possibile controllare $GLOBALS e contare il numero di istanze di classe.

Non sarebbe bello, e preferirei farlo con una proprietà statica.

Problemi correlati