function convertNumber($values) { $originalNumber = $values["number"]; if (is_numeric($originalNumber)) { $numerals = "Roman"; $originalNumber = (int) $originalNumber; $convertedNumber = Numbers_Roman::toNumeral($originalNumber, true, true); } else { $numerals = "Arabic"; $originalNumber = preg_replace("/[^IVXLCDM]/i", "", $originalNumber); $convertedNumber = Numbers_Roman::toNumber($originalNumber); } echo "<p>{$originalNumber} in {$numerals} numerals is: {$convertedNumber}.</p>"; }
function pleac_Working_with_Roman_Numerals() { // PHP offers no native support for Roman Numerals. However, a 'Numbers_Roman' class // is available for download from PEAR: [http://pear.php.net/package/Numbers_Roman]. // Note the following 'include' directives are required: // // include_once('Numbers/Roman.php'); $roman = Numbers_Roman::toNumeral($arabic); $arabic = Numbers_Roman::toNumber($roman); // ---------------------------- $roman_fifteen = Numbers_Roman::toNumeral(15); $arabic_fifteen = Numbers_Roman::toNumber($roman_fifteen); printf("Roman for fifteen is: %s\n", $roman_fifteen); printf("Arabic for fifteen is: %d\n", $arabic_fifteen); }