博客
关于我
PHP函数操作数字和汉字互转(100以内)
阅读量:793 次
发布时间:2023-03-01

本文共 2444 字,大约阅读时间需要 8 分钟。

function numDatabase() {
$numarr = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100);
return $numarr;
}
function hzDatabase() {
$hanziarr = array("一","二","三","四","五","六","七","八","九","十","十一","十二","十三","十四","十五","十六","十七","十八","十九","二十","二十一","二十二","二十三","二十四","二十五","二十六","二十七","二十八","二十九","三十","三十一","三十二","三十三","三十四","三十五","三十六","三十七","三十八","三十九","四十","四十一","四十二","四十三","四十四","四十五","四十六","四十七","四十八","四十九","五十","五十一","五十二","五十三","五十四","五十五","五十六","五十七","五十八","五十九","六十","六十一","六十二","六十三","六十四","六十五","六十六","六十七","六十八","六十九","七十","七十一","七十二","七十三","七十四","七十五","七十六","七十七","七十八","七十九","八十","八十一","八十二","八十三","八十四","八十五","八十六","八十七","八十八","八十八","九十","九十一","九十二","九十三","九十四","九十五","九十六","九十七","九十八","九十九","一百");
return $hanziarr;
}
function num2hanzi($str) {
$numarr = numDatabase();
$hanziarr = hzDatabase();
preg_match('/[0-9]+/',$str,$t);
$num = intval($t[0]);
$rstr = '';
if(in_array($num,$numarr)) {
foreach($numarr as $k => $v) {
if($v == $num) {
$kk = $k;
}
}
$rstr = str_replace($num, $hanziarr[$kk], $str);
}
return $rstr;
}
function hanzi2num($str) {
$numarr = numDatabase();
$hanziarr = hzDatabase();
foreach($hanziarr as $k => $v) {
if(strpos($str, $v) !== false) {
$rstr = str_replace($v, $numarr[$k], $str);
}
}
return $rstr;
}
function zhuan($str) {
$result = '';
$n = array('0','1','2','3','4','5','6','7','8','9');
$zi = array('一','二','3','4','5','6','7','8','9','十');
foreach($zi as $k => $v) {
if(strpos($str, $n[$k]) !== false) {
$result = num2hanzi($str);
}
if(strpos($str, $v) !== false) {
$result = hanzi2num($str);
}
}
return $result;
}
// 应用举例
$str = '56';
$r = zhuan($str);
echo $r;
$str = "八十二";
$r = zhuan($str);
echo $r;

以上代码提供了数字与汉字之间的转换功能,包含以下主要功能:

  • numDatabase() 函数用于获取数字数组
  • hzDatabase() 函数用于获取汉字数组
  • num2hanzi() 函数用于将数字转换为汉字
  • hanzi2num() 函数用于将汉字转换为数字
  • zhuan() 函数用于自动检测并进行转换
  • 代码实现了数字与汉字的双向转换功能,适用于文本处理和数据转换场景。通过正则表达式和数组查找,实现了高效的字符串替换功能。

    示例使用:

    $str = '56';
    $r = zhuan($str); // 输出: 五十六
    $str = "八十二";
    $r = zhuan($str); // 输出: 82

    转载地址:http://ectfk.baihongyu.com/

    你可能感兴趣的文章
    NHibernate学习[1]
    查看>>
    NHibernate异常:No persister for的解决办法
    查看>>
    NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
    查看>>
    NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
    查看>>
    NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现数据实时delete同步_实际操作04---大数据之Nifi工作笔记0043
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_实现数据插入数据到目标数据库_实际操作03---大数据之Nifi工作笔记0042
    查看>>
    NIFI从MySql中离线读取数据再导入到MySql中_03_来吧用NIFI实现_数据分页获取功能---大数据之Nifi工作笔记0038
    查看>>
    NIFI从PostGresql中离线读取数据再导入到MySql中_带有数据分页获取功能_不带分页不能用_NIFI资料太少了---大数据之Nifi工作笔记0039
    查看>>
    NIFI同步MySql数据_到SqlServer_错误_驱动程序无法通过使用安全套接字层(SSL)加密与SQL Server_Navicat连接SqlServer---大数据之Nifi工作笔记0047
    查看>>
    Nifi同步过程中报错create_time字段找不到_实际目标表和源表中没有这个字段---大数据之Nifi工作笔记0066
    查看>>
    NIFI大数据进阶_FlowFile拓扑_对FlowFile内容和属性的修改删除添加_介绍和描述_以及实际操作---大数据之Nifi工作笔记0023
    查看>>
    NIFI大数据进阶_NIFI的模板和组的使用-介绍和实际操作_创建组_嵌套组_模板创建下载_导入---大数据之Nifi工作笔记0022
    查看>>
    NIFI大数据进阶_NIFI监控的强大功能介绍_处理器面板_进程组面板_summary监控_data_provenance事件源---大数据之Nifi工作笔记0025
    查看>>
    NIFI大数据进阶_内嵌ZK模式集群1_搭建过程说明---大数据之Nifi工作笔记0015
    查看>>
    NIFI大数据进阶_外部ZK模式集群1_实际操作搭建NIFI外部ZK模式集群---大数据之Nifi工作笔记0017
    查看>>
    NIFI大数据进阶_离线同步MySql数据到HDFS_01_实际操作---大数据之Nifi工作笔记0029
    查看>>
    NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
    查看>>
    NIFI大数据进阶_连接与关系_设置数据流负载均衡_设置背压_设置展现弯曲_介绍以及实际操作---大数据之Nifi工作笔记0027
    查看>>