// Mes anterior:  
date_create(date('Ym01'))->modify('-1 day')  

// Este mes:  
date_create(date('Ym01'))->modify('+1 month -1 day')  

// Un mes concreto mediante timestamp:  
date_create(date('Ym01', $timestamp))->modify('+1 month -1 day')