- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
// convert ',' to '.'
public static function ConvertDecimal($num) {
$num = preg_replace('/,/i', '.', $num);
//check if is number after convertion
if (is_numeric($num))
return $num;
return false;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+170
// convert ',' to '.'
public static function ConvertDecimal($num) {
$num = preg_replace('/,/i', '.', $num);
//check if is number after convertion
if (is_numeric($num))
return $num;
return false;
}
у автора было суровое детство
локаль же
у обезьянки числа маленькие, дальше тысячный сепаратор притаился
я приблизительно такое дело делал в одной математической проге для одной полупроводниковой фирмы из Германии у который почти все клиенты седят в штатах: в Германии (и большинство Европы) в числах с плавающей точкой используется запятая - в штатах (и куча еще стран) точка. на локаль правильно выставленую полагатся тоже не приходится. поэтому народ в прогах хардкодит любимый разделитель, и в вводимых числах точку/запятую заменяют на этот самый разделитель.
это не говно а просто конвертация ввода пользователя.
один раз погеморитесь с '.' vs. ',' сами поймете к чему это...
заслуженное говно чтоли?
заставь кодобезьян локаль поддерживать, они и всё концепцию изговнякают...
куда здесь в жопу локаль? это обработка ввода пользователя. посади американца на немецкий компьютер (или немца за американский комп) и понаслаждайса трех этажной матерщиной по поводу что говняный софт отказывается числа вводить/вводит числа неправильно.
если софт не жопой писан - числа будут введены и выведены в привычном юзеру виде
и смена глобальной локали в системе чревата тем что и весь остальной софт начинает работать по другому. конкретный пример: консультанту из штатов для работы надо вводить числа с точкой, но на том же компе заполняемая почасавая отчетность должна использовать локальный формат.
смена локалей внутри программы в виндах (да и на других системах тоже) почти никогда не работала на 100% - потому что кучи библиотек кэшируют данные из локалей, потому что постоянные опросы тормозят немеряно.
вперед и с песней все грабли обходить.
пусть как и положено, ставит предпочитаемую локаль и вводит, не надо ему на уши ссать про несчастных полуграмотных аборигенов с контрабандными писюками, система позволяет хоть "xуй\0" использовать как разделитель
глобализация не подразумевает вавилон с модальными окнами в одной локали, а немодальными в другой
> кучи библиотек кэшируют
выкинуть или поправить, нотификация для этого есть
> почасавая
стоит ли спорить?
правильно, не стоит. все уже догадались что в данной тематике вы имеете ноль конкретного опыта. не говоря уже о том что бы понять проблему которую решает код выше.
вы правы, никогда не писал подобную хуйню, хотя на заре и искривлял дефолтную локаль ради своей говнософтины.
> не говоря уже о том что бы понять проблему
лол, илитненько.
разочарую, обезьянка думает, что сделала открытие, а на самом деле просто пачкает клавиатуру, не разобравшись к концепции.
'10.5'
'10,5'
Вопрос: как узнать, какой разделитель предпочитает пользователь?
А еще ему можно дать возможность выбрать эту конфигурацию в настройках
Проблема в том, что большинство юзеров знать не знают о локалях. А вот программистам знать об этом нужно.
Объяснять применение локали думаю было лишним.
http://www.google.com/search?q=php+locale
Человек написал функцию `isTsyfra` с поддержкой ваще любого разделителя
во-вторых, если делаете софт для америкашки, то и рассчитывайте сразу на местную локаль
с другой стороны, откуда в Германии хорошие программисты
http://lmgtfy.com/?q=%D1%8D%D1%80%D0%BE%D0%BB%D0%B0%D1%88
Выпуск №136 «Выручи меня!»
https://youtu.be/5TcUoN6d6s4
Кстати о птичках - у нас давеча поп с колокольни упал - так даже чирикнуть не успел