PHP - Formatar entrada de número

Tempos atrás desenvolvi um sistema simples em PHP para fazer alguns cálculos e tive problemas com o formato de entrada dos usuários, pois digitavam número com "," (vírgula) para separar as casas decimais, mas o PHP entende que a vírgula é o separador de milhar. O formato que o PHP usa é o americano, onde ao contrário do que utilizamos aqui no Brasil, o "." ponto é que separa a parte decimal.

Criei essa função para formatar a entrada do número digitado pelo usuário:
function formatarTelaParaPHP($valor){
    $valor = str_replace('.', '', $valor);
    return (float) str_replace(',', '.', $valor);
}
Ela irá substituir a vírgula digitada pelo usuário por ponto, que é a forma que o PHP entende.

E depois criei essa para formatar o número para mostrar na tela.
function formatarPHPParaTela($valor, $casasDecimais){
    return number_format($valor, $casasDecimais, ',', '.');
}

Nenhum comentário:

Postar um comentário