Как преобразовать число в римские цифры в PHP

Сниппет

Используйте следующую функцию для преобразования любого целого числа в строку, содержащую римское число.

downloadcopy
<?php
/**
 * @param int $number
 * @return string
 */
function numberToRoman(int $number) {
    $map = ['M' => 1000, 'CM' => 900, 'D' => 500, 'CD' => 400, 'C' => 100, 'XC' => 90, 'L' => 50, 'XL' => 40, 'X' => 10, 'IX' => 9, 'V' => 5, 'IV' => 4, 'I' => 1];
    $returnValue = '';
    while ($number > 0) {
        foreach ($map as $roman => $int) {
            if($number >= $int) {
                $number -= $int;
                $returnValue .= $roman;
                break;
            }
        }
    }
    return $returnValue;
}
//Использование
echo numberToRoman(3); // III
echo numberToRoman(114); // CXIV

Если вам нужно конвертировать это онлайн, вы можете использовать наш бесплатный инструмент - Конвертер чисел в римские цифры.