Numeric Utils
Classe de métodos estáticos relacionados a números inteiros e decimais.
Métodos
formatDecimalFromMask
Formata um número decimal com base em uma máscara de exibição, semelhante à utilizada nos campos de formulários do sistema.
A função interpreta a máscara fornecida para aplicar:
- Quantidade de casas decimais (.99 ou ,99).
- Separador decimal (ponto ou vírgula).
- Separador de milhar (inferido com base nos caracteres da parte inteira).
Parâmetros
float|string $value: Valor decimal que será formatado (aceita string ou número).
string $mask: Máscara de formatação (ex: 9[9][9],99, 9.999,99, etc).
Retorno
string: Valor formatado como string, de acordo com os separadores e casas decimais da máscara. Retorna string vazia se o valor informado não for numérico.
Exemplos de uso
NumericUtils::formatDecimalFromMask(1234.56, '9[9][9],99');
NumericUtils::formatDecimalFromMask('9876.5', '9[9][9][9].99');
$tabela = xDS::getTable('APONTAMENTO_EQUIPAMENTO');
$tipo = $tabela->CAMPOS['HORIMETRO_ANTERIOR']->TIPO;
$mask = $tabela->CAMPOS['HORIMETRO_ANTERIOR']->MASCARA;
$value = Dao::table('APONTAMENTO_EQUIPAMENTO')->seqDb(89);
echo NumericUtils::formatDecimalFromMask($value['HORIMETRO_ANTERIOR'], $mask);
Notas
Esta função foi criada para reutilização em partes do sistema fora do CRUD, como geração de relatórios, mantendo o mesmo padrão visual de formatação numérica.