PHP имеет много встроенных функций для проверки чисел, но все они ожидают ввода в формате computer : 1234.56
. Мне нужно проверить такие вещи, как 1,234.56
(английский) или 1.234,56
(испанский), вместе с некоторыми типичными атрибутами (допустимый диапазон, максимальное количество десятичных знаков и т. Д.).
Я начал писать свою собственную функцию, но вскоре заблудился. Легко прочитать пользовательский ввод в переменную типа float, но я хочу иметь возможность обнаруживать числа с недопустимыми форматами, такими как 1,23456.7
или 1..25
.
Есть ли у вас какие-либо рекомендации по этому вопросу?
(Десятичные и тысячные символы известны заранее, и можно жестко кодировать группы цифр в три, нет необходимости указывать формат индийских чисел .)