Classificar arrays por data pode ser um desafio, especialmente se as datas não estiverem em um formato padrão ou consistente. Este artigo irá guiá-lo através das técnicas para classificar matrizes de data em PHP.
Se a matriz de data estiver em um formato compatível com MySQL (AAAA-MM- DD ou AAAA-MM-DD HH:mm:ss), você pode simplesmente usar a função asort() para classificar o array. No entanto, se as datas forem localizadas ou formatadas de maneira não padrão, asort() não produzirá o resultado desejado.
Para datas em formatos não padrão, você precisa usar uma função de classificação personalizada com usort(). Esta função converte as datas em um formato classificável antes de compará-las.
usort($arr, function ($a, $b) {
return strtotime($a) - strtotime($b);
});
Nesta função, strtotime() é usado para converter as datas em carimbos de data/hora Unix, que são então usados para comparação. Este método funcionará para a maioria dos formatos de data, incluindo formatos localizados.
Embora o uso de strtotime() seja geralmente eficaz, existem armadilhas potenciais. Países diferentes usam formatos de data diferentes, portanto, é possível obter resultados incorretos se o formato de data não for definido explicitamente.
Para evitar essas armadilhas, é recomendado usar uma biblioteca que lide com formatação e análise de data, como Carbon ou DataHora. Essas bibliotecas fornecem funções especializadas para comparar e classificar datas em vários formatos.
Seguindo essas técnicas, você pode classificar matrizes de datas com eficácia em PHP, garantindo que seu código lide corretamente com diferentes formatos de data.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3