As necessidades vão surgindo e eu vou compartilhando com vocês.
Ao usar a função date() para retornar o mês por extenso, o nome ficava em inglês.
echo date("F/Y", strtotime("2016-09-22"));
// September/2016
Segundo o site oficial “Para formatar datas em outros idiomas, você deve utilizar as funções setlocale() e strftime() em vez de date()“.
Segui o conselho e cheguei ao código abaixo:
setlocale(LC_ALL, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');
echo ucfirst( utf8_encode( strftime("%B de %Y", strtotime("2016-09-22") ) ) );
// Setembro de 2016
obs. usei a função ucfirst() para tornar a primeira letra em maiúsculo.
Até a próxima!