日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

php数字转中文数字排序,php实现中文转数字

發(fā)布時間:2023/12/4 php 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php数字转中文数字排序,php实现中文转数字 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

分享一個輔助函數(shù),使用php盡可能識別出字符串中的數(shù)字,

先上代碼

function checkNatInt($str) {

$map = array(

'一' => '1','二' => '2','三' => '3','四' => '4','五' => '5','六' => '6','七' => '7','八' => '8','九' => '9',

'壹' => '1','貳' => '2','叁' => '3','肆' => '4','伍' => '5','陸' => '6','柒' => '7','捌' => '8','玖' => '9',

'零' => '0','兩' => '2',

'仟' => '千','佰' => '百','拾' => '十',

'萬萬' => '億',

);

$str = str_replace(array_keys($map), array_values($map), $str);

$str = checkString($str, '/([\d億萬千百十]+)/u');

$func_c2i = function ($str, $plus = false) use(&$func_c2i) {

if(false === $plus) {

$plus = array('億' => 100000000,'萬' => 10000,'千' => 1000,'百' => 100,'十' => 10,);

}

$i = 0;

if($plus)

foreach($plus as $k => $v) {

$i++;

if(strpos($str, $k) !== false) {

$ex = explode($k, $str, 2);

$new_plus = array_slice($plus, $i, null, true);

$l = $func_c2i($ex[0], $new_plus);

$r = $func_c2i($ex[1], $new_plus);

if($l == 0) $l = 1;

return $l * $v + $r;

}

}

return (int)$str;

}

return $func_c2i($str);

}

//來自uct php微信開發(fā)框架,其中的checkString函數(shù)如下

function checkString($var, $check = '', $default = '') {

if (!is_string($var)) {

if(is_numeric($var)) {

$var = (string)$var;

}

else {

return $default;

}

}

if ($check) {

return (preg_match($check, $var, $ret) ? $ret[1] : $default);

}

return $var;

}

實現(xiàn)效果如下。

echo checkNatInt('九百六十萬'); //普通中文數(shù)字,9600000

echo checkNatInt('壹億柒仟萬零捌佰肆拾'); //大寫中文數(shù)字,170000840

echo checkNatInt('學(xué)好PHP拿百萬年薪'); //句子中的數(shù)字, 1000000

echo checkNatInt('今年春運發(fā)送人次達26億'); //數(shù)字和漢字混合出現(xiàn),2600000000

echo checkNatInt('兩只小蜜蜂'); //口語化數(shù)字,2

echo checkNatInt('萬萬沒想到'); //復(fù)古的表達方式,100000000

注意事項

不支持小數(shù)

不支持大于PHP_INT_MAX的數(shù)

本條技術(shù)文章來源于互聯(lián)網(wǎng),如果無意侵犯您的權(quán)益請點擊此處反饋版權(quán)投訴

本文系統(tǒng)來源:php中文網(wǎng)

總結(jié)

以上是生活随笔為你收集整理的php数字转中文数字排序,php实现中文转数字的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。