Untitled
unknown
plain_text
3 years ago
1.2 kB
6
Indexable
function converteData($string) {
// Define um array com os padrões de data por extenso a serem identificados
$padroes = array(
'/([0-9]{1,2}) de (janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro) de ([0-9]{4})/',
'/([0-9]{1,2}) de (janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro) de ([0-9]{2})/',
'/([0-9]{2}) de (janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro) de ([0-9]{4})/',
'/([0-9]{1,2}) (jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez) de ([0-9]{4})/',
'/([0-9]{2}) (jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez) de ([0-9]{4})/'
);
// Define um array com os formatos de data correspondentes
$formatos = array(
'd \d\e F \d\e Y',
'd \d\e F \d\e y',
'd/m/Y',
'd/m/Y',
'd/m/Y'
);
// Substitui os padrões de data por extenso pelos formatos correspondentes
$data = preg_replace($padroes, $formatos, $string);
return $data;
}
// Exemplo de uso da função
$string = "1 de dezembro de 2020";
$data = converteData($string);
echo $data; // Output: 1 de dezembro de 2020 -> 01/12/2020
Editor is loading...