ММО Валюта - Создание 493205 будет 49g 32s 5c
Переполнение стека
Скорее всего, это очень, очень простое решение, но мой усталый мозг просто не может придумать его.
Как видно из заголовка, я хотел бы написать функцию, которая может преобразовывать число, например:
493205
В строку:
"49г 32с 5с"
Что было бы наиболее логичным способом сделать это?
1 ответ
Быстрый однострочный, предполагая, что $x содержит целочисленное значение:
printf('%dg %ds %dc', $x / 100 / 100, $x / 100 % 100, $x % 100);
Модуль 100 дает нам последние две цифры, а деление на 100 "удаляет" последние две цифры из числа. (Технически это дает число с плавающей запятой, но использование по модулю снова приводит к целочисленному преобразованию.)