Punto 1)

Informativa Se una classe prensenta delle classi figlie
Se non ha classi figlie vengono evidenziati i metodi, altrimenti i metodi dei padri sono evidenziati nella classe figlia che li ha ereditati

Se ci sono Classi Padri i metodi della classe PADRE DI BASE vengono evidenziati in un array stdClass al punto 5
Il nome delle classi figlie e padri è evidenziato al punto 4
Nota bene qui stiamo controllando tutto di conseguenza potrebbe essere
class A extends B and class B extends C and class E extends D etc..

Le classi presenti nella cartella Model sono :
array(8) {
  [0]=>
  string(10) "variazioni"
  [1]=>
  string(20) "variazioniAggiornate"
  [2]=>
  string(7) "Student"
  [3]=>
  string(10) "lavoratore"
  [4]=>
  string(8) "template"
  [5]=>
  string(9) "Template2"
  [6]=>
  string(10) "viewEsempi"
  [7]=>
  string(5) "model"
}
Classe variazioni presenta : 1 classe figlia/e
le/la classi figlia/e si chiama/no variazioniAggiornate
Classe variazioniAggiornate non ha classi figlie, i metodi sono :
array(4) {
  [0]=>
  string(20) "variazioneDatiEstesa"
  [1]=>
  string(11) "__construct"
  [2]=>
  string(20) "scriviNomeVariazione"
  [3]=>
  string(14) "debugStruttura"
}
Classe Student non ha classi figlie, i metodi sono :
array(5) {
  [0]=>
  string(11) "__construct"
  [1]=>
  string(7) "getName"
  [2]=>
  string(7) "setName"
  [3]=>
  string(6) "invoca"
  [4]=>
  string(16) "indirizzoStudent"
}
Classe lavoratore non ha classi figlie, i metodi sono :
array(4) {
  [0]=>
  string(11) "__construct"
  [1]=>
  string(7) "getName"
  [2]=>
  string(7) "setName"
  [3]=>
  string(6) "invoca"
}
Classe template non ha classi figlie, i metodi sono :
array(11) {
  [0]=>
  string(11) "__construct"
  [1]=>
  string(9) "setTplVar"
  [2]=>
  string(10) "processTpl"
  [3]=>
  string(15) "setSingleTplVar"
  [4]=>
  string(8) "printTpl"
  [5]=>
  string(9) "returnTpl"
  [6]=>
  string(10) "returnTpl2"
  [7]=>
  string(9) "appendTpl"
  [8]=>
  string(8) "resetTpl"
  [9]=>
  string(9) "fastPrint"
  [10]=>
  string(10) "fastReturn"
}
Classe Template2 non ha classi figlie, i metodi sono :
array(3) {
  [0]=>
  string(11) "__construct"
  [1]=>
  string(14) "settaVariabili"
  [2]=>
  string(7) "procedi"
}
Classe viewEsempi non ha classi figlie, i metodi sono :
array(21) {
  [0]=>
  string(11) "__construct"
  [1]=>
  string(8) "listForm"
  [2]=>
  string(18) "recuperoUtenteForm"
  [3]=>
  string(11) "versione143"
  [4]=>
  string(11) "versione151"
  [5]=>
  string(19) "versione151OnSelect"
  [6]=>
  string(13) "provaRecupero"
  [7]=>
  string(17) "versione143Layout"
  [8]=>
  string(13) "ricercaComune"
  [9]=>
  string(11) "grigliaW2ui"
  [10]=>
  string(9) "salvaForm"
  [11]=>
  string(9) "insertRow"
  [12]=>
  string(9) "provaForm"
  [13]=>
  string(18) "eliminazioneRecord"
  [14]=>
  string(12) "provaColonne"
  [15]=>
  string(8) "callback"
  [16]=>
  string(11) "callbackDue"
  [17]=>
  string(12) "creaNodiW2ui"
  [18]=>
  string(19) "creaTemplateSidebar"
  [19]=>
  string(23) "creaTemplateFormSidebar"
  [20]=>
  string(14) "aperturaEvento"
}
Classe model non ha classi figlie, i metodi sono :
array(4) {
  [0]=>
  string(11) "inviaAzione"
  [1]=>
  string(19) "inviaAzioneDaServer"
  [2]=>
  string(12) "switchAzione"
  [3]=>
  string(20) "switchAzioneDaServer"
}
Punto 2)

È come il punto 1 ma in chiave valore. Metodi totali di tutte le classi(ordinate alfabeticamente) esclusi i metodi dei padri che hanno figli :
array(8) {
  [""]=>
  string(55) "Nessun metodo conteggiato per classe padre : variazioni"
  ["lavoratore"]=>
  array(4) {
    [0]=>
    string(11) "__construct"
    [1]=>
    string(7) "getName"
    [2]=>
    string(7) "setName"
    [3]=>
    string(6) "invoca"
  }
  ["model"]=>
  array(4) {
    [0]=>
    string(11) "inviaAzione"
    [1]=>
    string(19) "inviaAzioneDaServer"
    [2]=>
    string(12) "switchAzione"
    [3]=>
    string(20) "switchAzioneDaServer"
  }
  ["Student"]=>
  array(5) {
    [0]=>
    string(11) "__construct"
    [1]=>
    string(7) "getName"
    [2]=>
    string(7) "setName"
    [3]=>
    string(6) "invoca"
    [4]=>
    string(16) "indirizzoStudent"
  }
  ["template"]=>
  array(11) {
    [0]=>
    string(11) "__construct"
    [1]=>
    string(9) "setTplVar"
    [2]=>
    string(10) "processTpl"
    [3]=>
    string(15) "setSingleTplVar"
    [4]=>
    string(8) "printTpl"
    [5]=>
    string(9) "returnTpl"
    [6]=>
    string(10) "returnTpl2"
    [7]=>
    string(9) "appendTpl"
    [8]=>
    string(8) "resetTpl"
    [9]=>
    string(9) "fastPrint"
    [10]=>
    string(10) "fastReturn"
  }
  ["Template2"]=>
  array(3) {
    [0]=>
    string(11) "__construct"
    [1]=>
    string(14) "settaVariabili"
    [2]=>
    string(7) "procedi"
  }
  ["variazioniAggiornate"]=>
  array(4) {
    [0]=>
    string(20) "variazioneDatiEstesa"
    [1]=>
    string(11) "__construct"
    [2]=>
    string(20) "scriviNomeVariazione"
    [3]=>
    string(14) "debugStruttura"
  }
  ["viewEsempi"]=>
  array(21) {
    [0]=>
    string(11) "__construct"
    [1]=>
    string(8) "listForm"
    [2]=>
    string(18) "recuperoUtenteForm"
    [3]=>
    string(11) "versione143"
    [4]=>
    string(11) "versione151"
    [5]=>
    string(19) "versione151OnSelect"
    [6]=>
    string(13) "provaRecupero"
    [7]=>
    string(17) "versione143Layout"
    [8]=>
    string(13) "ricercaComune"
    [9]=>
    string(11) "grigliaW2ui"
    [10]=>
    string(9) "salvaForm"
    [11]=>
    string(9) "insertRow"
    [12]=>
    string(9) "provaForm"
    [13]=>
    string(18) "eliminazioneRecord"
    [14]=>
    string(12) "provaColonne"
    [15]=>
    string(8) "callback"
    [16]=>
    string(11) "callbackDue"
    [17]=>
    string(12) "creaNodiW2ui"
    [18]=>
    string(19) "creaTemplateSidebar"
    [19]=>
    string(23) "creaTemplateFormSidebar"
    [20]=>
    string(14) "aperturaEvento"
  }
}
Punto 3)

Numero di metodi che si ripetono, inclusi i metodi comuni a classi padri : 8
I metodi che si ripetono sono :
array(8) {
  [0]=>
  string(11) "__construct"
  [1]=>
  string(11) "__construct"
  [2]=>
  string(7) "getName"
  [3]=>
  string(7) "setName"
  [4]=>
  string(6) "invoca"
  [5]=>
  string(11) "__construct"
  [6]=>
  string(11) "__construct"
  [7]=>
  string(11) "__construct"
}
Nome Metodi e quante volte di ripetono(Sono inclusi i metodi delle classi padri) :
array(4) {
  ["__construct"]=>
  int(5)
  ["getName"]=>
  int(1)
  ["setName"]=>
  int(1)
  ["invoca"]=>
  int(1)
}
Punto 4)

Nome delle classi Figlie e Padre

variazioni ha come padri : nessuno
variazioniAggiornate ha come padri : variazioni
Student ha come padri : nessuno
lavoratore ha come padri : nessuno
template ha come padri : nessuno
Template2 ha come padri : nessuno
viewEsempi ha come padri : nessuno
model ha come padri : nessuno
Punto 5)

I metodi delle classi padri che hanno figli sono in stdClass ReflectionClass:
array(1) {
  [0]=>
  array(3) {
    [0]=>
    object(ReflectionMethod)#25 (2) {
      ["name"]=>
      string(11) "__construct"
      ["class"]=>
      string(10) "variazioni"
    }
    [1]=>
    object(ReflectionMethod)#21 (2) {
      ["name"]=>
      string(20) "scriviNomeVariazione"
      ["class"]=>
      string(10) "variazioni"
    }
    [2]=>
    object(ReflectionMethod)#18 (2) {
      ["name"]=>
      string(14) "debugStruttura"
      ["class"]=>
      string(10) "variazioni"
    }
  }
}
Punto 6)

Sono presenti delle interfacce i nomi delle interfacce sono :

array(1) {
  [0]=>
  string(7) "persona"
}

L'array sottostante mostra come 'chiave' il nome dell'interfaccia e come 'valore' il nome dei metodi
array(1) {
  ["persona"]=>
  array(3) {
    [0]=>
    string(7) "getName"
    [1]=>
    string(7) "setName"
    [2]=>
    string(6) "invoca"
  }
}

L'array sottostante mostra come chiave il nome dell'interfaccia e come valori
Le classi che implementano quella interfaccia :

array(1) {
  ["persona"]=>
  array(2) {
    [0]=>
    array(1) {
      ["classe"]=>
      string(7) "Student"
    }
    [1]=>
    array(1) {
      ["classe"]=>
      string(10) "lavoratore"
    }
  }
}