您好,登錄后才能下訂單哦!
這篇文章主要為大家詳細(xì)介紹了使用PHP怎么實(shí)現(xiàn)一個(gè)人民幣大小寫轉(zhuǎn)換函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,發(fā)現(xiàn)的小伙伴們可以參考一下:
具體代碼如下所示:
<?php header("charset=utf-8;"); function numTrmb($num){ $d = array("零", "壹", "貳", "叁", "肆", "伍", "陸", "柒", "捌", "玖"); $e = array('元', '拾', '佰', '仟', '萬', '拾萬', '佰萬', '仟萬', '億', '拾億', '佰億', '仟億'); $p = array('分', '角'); $zheng = "整"; $final = array(); $inwan = 0;//是否有萬 $inyi = 0;//是否有億 $len = 0;//小數(shù)點(diǎn)后的長(zhǎng)度 $y = 0; $num = round($num, 2);//精確到分 if(strlen($num) > 15){ return "金額太大"; die(); } if($c = strpos($num, '.')){//有小數(shù)點(diǎn),$c為小數(shù)點(diǎn)前有幾位 $len=strlen($num)-strpos($num,'.')-1;//小數(shù)點(diǎn)后有幾位數(shù) }else{//無小數(shù)點(diǎn) $c = strlen($num); $zheng = '整'; } for($i = 0; $i < $c; $i++){ $bit_num = substr($num, $i, 1); if ($bit_num != 0 || substr($num, $i + 1, 1) != 0) { @$low = $low . $d[$bit_num]; } if ($bit_num || $i == $c - 1) { @$low = $low . $e[$c - $i - 1]; } } if($len!=1){ for ($j = $len; $j >= 1; $j--) { $point_num = substr($num, strlen($num) - $j, 1); @$low = $low . $d[$point_num] . $p[$j - 1]; } }else{ $point_num = substr($num, strlen($num) - $len, 1); $low=$low.$d[$point_num].$p[$len]; } $chinses = str_split($low, 3);//字符串轉(zhuǎn)化為數(shù)組 for ($x = count($chinses) - 1; $x >= 0; $x--) { if ($inwan == 0 && $chinses[$x] == $e[4]) {//過濾重復(fù)的萬 $final[$y++] = $chinses[$x]; $inwan = 1; } if ($inyi == 0 && $chinses[$x] == $e[8]) {//過濾重復(fù)的億 $final[$y++] = $chinses[$x]; $inyi = 1; $inwan = 0; } if ($chinses[$x] != $e[4] && $chinses[$x] !== $e[8]) { $final[$y++] = $chinses[$x]; } } $newstr = (array_reverse($final)); $nstr = join($newstr); if((substr($num, -2, 1) == '0') && (substr($num, -1) <> 0)){ $nstr = substr($nstr, 0, (strlen($nstr) -6)).'零'. substr($nstr, -6, 6); } $nstr=(strpos($nstr,'零角')) ? substr_replace($nstr,"",strpos($nstr,'零角'),6) : $nstr; return $nstr = (substr($nstr,-3,3)=='元') ? $nstr . $zheng : $nstr; } echo numTrmb(965002.65);
效果圖:
下面看下php大小寫轉(zhuǎn)換函數(shù)
1.將字符串轉(zhuǎn)換成小寫
strtolower(): 該函數(shù)將傳入的字符串參數(shù)所有的字符都轉(zhuǎn)換成小寫,并以小定形式放回這個(gè)字符串.
例:
<?php $str = "I want To FLY"; $str = strtolower($str); echo $str; ?>
輸出結(jié)果:
i want to fly
2.將字符轉(zhuǎn)成大寫
strtoupper(): 該函數(shù)的作用同strtolower函數(shù)相反,是將傳入的字符參數(shù)的字符全部轉(zhuǎn)換成大
寫,并以大寫的形式返回這個(gè)字符串.用法同strtolowe()一樣.
3.將字符串首字符轉(zhuǎn)換成大寫
usfilst(): 該函數(shù)的作用是將字符串的第一個(gè)字符改成大寫,該函數(shù)返回首字符大寫的字符串.
用法同strtolowe()一樣.
4.將字符串每個(gè)單詞的首字符轉(zhuǎn)換成大寫
ucwords(): 該函數(shù)將傳入的字符串的每個(gè)單詞的首字符變成大寫.如"hello world",經(jīng)過該函數(shù)
處理后,將返回"Hello Word".用法同strtolowe()一樣.
以上就是億速云小編為大家收集整理的使用PHP怎么實(shí)現(xiàn)一個(gè)人民幣大小寫轉(zhuǎn)換函數(shù),如何覺得億速云網(wǎng)站的內(nèi)容還不錯(cuò),歡迎將億速云網(wǎng)站推薦給身邊好友。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。