Como pegar o último dia do mês em PHP
E ai, galera, beleza?
Todos nós sabemos que os meses do ano não possuem o número fixo de dias, certo? Além disso, o mês de fevereiro varia em anos bisextos (a cada quatro anos) e tem um dia a mais. Em algumas aplicações nós precisamos saber qual é o último dia de um determinado mês e ninguém que ficar perdendo tempo fazendo cálculos. Por isso irei apresenta 2 formas de nós sabermos isso.
Utilizando PHP puro
Se você está utilizando o PHP para manipular datas, basta utilizar a classe DateTime:
<?php
$data = '2019-09-22';
$data = new \DateTime($data);
$data->modify('last day of this month');
echo $data->format('Y-m-d');
Veja como foi simples, utilizamos o método modify() e passamos à ele o parâmetro "last day of this month" (último dia desse mês). Depois é pegar o formato que desejar.
Utilizando Carbon
Caso você utilize a biblioteca Carbo (ela já vem instalada no Laravel) basta utilizar o seguinte código:
<?php
use Carbon\Carbon;
$data = '2019-09-22';
$carbon = new Carbon($data);
$carbon->lastOfMonth();
echo $carbon->format('Y-m-d');
Claramente podemos ver que utilizando a biblioteca Carbon o código fica mais limpo, usamos um método sem parâmetro, que diminui, inclusive, as changes de erro. No site da documentação você encontra bem mais detalhes sobre a biblioteca.