Конвертер римских цифр [romanDigit]

Простой сниппет, который конвертирует арабские цифры в римские.

Код сниппета я нашел на просторах интернета и адаптировал его для удобного использования с MODx.

Пример использования:

[[+placeholder:romanDigit]]
[[romanDigit? &input=`44`]]

Код самого сниппета romanDigit:

<?php
$dgt = $input;

if(isset($dgt) && !empty($dgt)){

  $thousands=(int)($dgt/1000);
  $dgt-=$thousands*1000;
  $result=str_repeat("M",$thousands);
  $table=array(
    900=>"CM",500=>"D",400=>"CD",100=>"C",
    90=>"XC",50=>"L",40=>"XL",10=>"X",
    9=>"IX",5=>"V",4=>"IV",1=>"I");
  while($dgt) {
    foreach($table as $part=>$fragment) if($part<=$dgt) break;
    $amount=(int)($dgt/$part);
    $dgt-=$part*$amount;
    $result.=str_repeat($fragment,$amount);
  }
  return $result ? $result : false;
}

Ссылка на скачивание пакета
Хулио Надда
05 мая 2015, 18:02
modx.pro
3
2 117
+2

Комментарии: 3

Wassi Wassinen
06 мая 2015, 00:55
0
РиМских цифр.
Хулио Надда
19 мая 2015, 02:52
+1
Компонент был добавлен в modstore modstore.pro/packages/content/romandigit
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    3