lo fa sia su agosto sia su settembre
il motivo non lo so, ma se racchiudi il mese nel case tra doppi apici funziona correttamente

Codice PHP:
private function formattaData($data){
//ESTRAPOLO IL MESE IN ITALIANO
    
switch(substr($data,4,2)){
        case 
"01":
        
$this->mese="gennaio";
        break;
//[...]