壹六八信息科技网站建设,体育网站建设的必要性,seo外包网站,怎么做cpa网站分享一个辅助函数#xff0c;使用php尽可能识别出字符串中的数字#xff0c;先上代码function checkNatInt($str) {$map array(一 1,二 2,三 3,四 4,五 5,六 6,七 7,八 8,九 9,壹 1,贰 2,叁 3,肆 4,伍 使用php尽可能识别出字符串中的数字先上代码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微信开发框架其中的checkString函数如下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;}实现效果如下。echo checkNatInt(九百六十万); //普通中文数字9600000echo checkNatInt(壹亿柒仟万零捌佰肆拾); //大写中文数字170000840echo checkNatInt(学好PHP拿百万年薪); //句子中的数字, 1000000echo checkNatInt(今年春运发送人次达26亿); //数字和汉字混合出现2600000000echo checkNatInt(两只小蜜蜂); //口语化数字2echo checkNatInt(万万没想到); //复古的表达方式100000000注意事项不支持小数不支持大于PHP_INT_MAX的数本条技术文章来源于互联网如果无意侵犯您的权益请点击此处反馈版权投诉本文系统来源php中文网