国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP如何將整數(shù)數(shù)字轉(zhuǎn)換為羅馬數(shù)字?(代碼示例

2020-03-22 20:29:26
字體:
供稿:網(wǎng)友
如何將一個(gè)整數(shù)數(shù)字轉(zhuǎn)換為羅馬數(shù)字顯示?下面本篇文章就來帶大家了解使用PHP將整數(shù)數(shù)字轉(zhuǎn)換為羅馬數(shù)字的方法,希望對(duì)大家有所幫助。

方法一:自定義函數(shù)

我們可以自己手動(dòng)編寫一個(gè)函數(shù)來實(shí)現(xiàn)此功能,這個(gè)函數(shù)可以將數(shù)字作為第一個(gè)參數(shù),將其轉(zhuǎn)換為羅馬并返回。

注:大多數(shù)算法只能在1-4999的范圍內(nèi)工作,如果使用特大數(shù),腳本將失敗。

實(shí)現(xiàn)代碼:

 ?phpheader( content-type:text/html;charset=utf-8 //將數(shù)字轉(zhuǎn)換為羅馬表示形式function numberToRoman($num)  // Be sure to convert the given parameter into an integer $n = intval($num); $result =  // Declare a lookup array that we will use to traverse the number:  $lookup = array( 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 foreach ($lookup as $roman = $value)  // Look for number of matches $matches = intval($n / $value);  // Concatenate characters $result .= str_repeat($roman, $matches);  // Substract that from the number  $n = $n % $value;  return $result; echo 整數(shù)數(shù)字轉(zhuǎn)換為羅馬數(shù)字: br br // VIIIecho 數(shù)字8: .numberToRoman(8). br // CXXIIIecho 數(shù)字123: .numberToRoman(123). br // MMCCCLVecho 數(shù)字2355: .numberToRoman(2355). br // MMMMCMXCIXecho 數(shù)字4999: .numberToRoman(4999). br ? 

輸出:

2.jpg

方法二:使用Romans庫

Romans庫是一個(gè)非常簡(jiǎn)單的PHP羅馬數(shù)字庫,允許您將整數(shù)轉(zhuǎn)換為其羅馬表示,反之亦然。

注:如果沒有該庫,請(qǐng)先需要安裝;安裝好Romans庫后,就能夠使用其命名空間并使用可幫助轉(zhuǎn)換數(shù)字的函數(shù)。

Romans庫包含一對(duì)簡(jiǎn)單的過濾器,用于將具有羅馬數(shù)字的字符串轉(zhuǎn)換為表示輸入為十進(jìn)制的int,將十進(jìn)制int轉(zhuǎn)換為具有羅馬數(shù)字作為結(jié)果的字符串。

1、整數(shù)轉(zhuǎn)換為羅馬數(shù)字

要將整數(shù)轉(zhuǎn)換為羅馬表示,需要使用IntToRoman類,創(chuàng)建一個(gè)實(shí)例并從中調(diào)用filter方法。此方法將數(shù)字作為第一個(gè)參數(shù),并返回帶有羅馬數(shù)字的字符串:

 ?phpuse Romans/Filter/IntToRoman;$filter = new IntToRoman();$result = $filter- filter(1999);echo $result;? 

輸出:

MCMXCIX

2、羅馬數(shù)字轉(zhuǎn)換為整數(shù)

要將羅馬數(shù)字轉(zhuǎn)換為整數(shù)表示,需要使用RomanToInt類,創(chuàng)建一個(gè)實(shí)例并從中調(diào)用filter方法。此方法將使用羅馬數(shù)字的字符串作為第一個(gè)參數(shù),并返回一個(gè)帶數(shù)值的整數(shù):

 ?phpuse Romans/Filter/RomanToInt;$filter = new RomanToInt();$result = $filter- filter( MCMXCIX echo $result;? 

輸出:

1999

相關(guān)視頻教程推薦:《PHP教程》

以上就是本篇文章的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)有所幫助。更多精彩內(nèi)容大家可以關(guān)注php 相關(guān)教程欄目!!!

以上就是PHP如何將整數(shù)數(shù)字轉(zhuǎn)換為羅馬數(shù)字?(代碼示例)的詳細(xì)內(nèi)容,PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 岱山县| 双桥区| 常州市| 离岛区| 南靖县| 上栗县| 迭部县| 凤庆县| 仁化县| 饶阳县| 库车县| 定安县| 泽普县| 克拉玛依市| 杭锦旗| 许昌县| 阿坝县| 巴马| 布拖县| 都江堰市| 河源市| 四会市| 宜阳县| 青州市| 政和县| 昌图县| 沭阳县| 吴忠市| 文水县| 九寨沟县| 定州市| 中牟县| 旬阳县| 邵武市| 宜都市| 神农架林区| 葵青区| 新余市| 浦江县| 滨海县| 玉屏|