php 阿拉伯数字转换罗马数字的函数示例

前端之家收集整理的这篇文章主要介绍了php 阿拉伯数字转换罗马数字的函数示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
本文实例讲述了PHP阿拉伯数字转换罗马数字的函数 ,感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
经测试代码如下:

/**
 * 阿拉伯数字转罗马数字
 *
 * @param 
 * @arrange (512.笔记) jb51.cc
 **/
function to_roman($num) {
// Function to convert an arabic number ($num) to a roman numeral.  $num must be between 
0 and 9,999
if ($num < 0 || $num > 9999) { return -1; } // out of range
$r_ones = array(1=> "I",2=>"II",3=>"III",4=>"IV",5=>"V",6=>"VI",7=>"VII",8=>"VIII",9=>"IX"); 
$r_tens = array(1=> "X",2=>"XX",3=>"XXX",4=>"XL",5=>"L",6=>"LX",7=>"LXX",8=>"LXXX",9=>"XC"); 
$r_hund = array(1=> "C",2=>"CC",3=>"CCC",4=>"CD",5=>"D",6=>"DC",7=>"DCC",8=>"DCCC",9=>"CM"); 
$r_thou = array(1=> "M",2=>"MM",3=>"MMM",4=>"MMMM",5=>"MMMMM",6=>"MMMMMM",7=>"MMMMMMM",8=>"MMMMMMMM",9=>"MMMMMMMMM");
$ones = $num % 10; 
$tens = ($num - $ones) % 100; 
$hundreds = ($num - $tens - $ones) % 1000; 
$thou = ($num - $hundreds - $tens - $ones) % 10000;
$tens = $tens / 10; 
$hundreds = $hundreds / 100; 
$thou = $thou / 1000;
if ($thou) { $rnum .= $r_thou[$thou]; } 
if ($hundreds) { $rnum .= $r_hund[$hundreds]; } 
if ($tens) { $rnum .= $r_tens[$tens]; } 
if ($ones) { $rnum .= $r_ones[$ones]; }
return $rnum;
}
 // function to_roman($num) 


/***   代码来自编程之家 jb51.cc(jb51.cc)   ***/

猜你在找的PHP相关文章