php中123转一二三的方法好代码教程

这是一个初秋的夜晚,天气晴朗,一丝风都没有,抬头仰望,湛蓝的天空中,挂着一轮金黄的圆月。月亮把它那淡淡的月光毫不吝啬地撒向洞庭湖。圆月四周,稀稀疏疏地点缀着几颗星星,那几颗星星也把微弱的光源聚集起来,撒向月光下的湖面。这下,洞庭湖真是美极了。

今天遇到个php中数字转大写的小需求,就是将数字'0123'转成"零一二三",一开始以为php中有实现此需求的内置函数,结果查了半天没找到,就索性自已写一个吧。注意,这里只是实现单个数字与之对应的大写或汉字的转换方式,并不是转成多少千多少百的那种数字的转换方式。

php 将数字123转成一二三的方法

我们可以用数组来实现这一功能,代码如下:

php代码示例:

<?php
$a = 9;
$arr = array('零', '一', '二', '三', '四', '五', '六', '七', '八', '九');
echo $arr[$a];
// 九
?>

上面的代码只能实现一个不超过9的正整数进行转换,但如果是一串长长的数字该如何转换呢?

php中阿拉伯数字转大写的方法

下面给出两个可以处理数字字符串的示例,大家可根据自己的需求使用吧!

示例1:

自定义一个php函数

<?php
function intTostr($num) {
    // 判断是否为数组
    if(!is_numeric($num)){
        return "要转换的金额只能为数字!";
    }
    // 预定义要转换的字符,自己可以切换一下要转换的方式
    // $arr = array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖');
    $arr = array('零', '一', '二', '三', '四', '五', '六', '七', '八', '九');
    $result = null;
    //获取字符串的长度 feiniaomy.com
    $integerArrLength = strlen($num);
    //开始转化
    for($i = 0; $i < $integerArrLength; $i++) {
        $result .= $arr[$num[$i]];
    }
    return $result;
}
?>

函数调用

<?php
echo intTostr('01123123456');
//零一一二三一二三四五六
?>

示例2:

<?php
$num = '056445678';
$toarr = array('零', '一', '二', '三', '四', '五', '六', '七', '八', '九');
$arr = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
echo str_replace($arr,$toarr,$num);
// 零五六四四五六七八
?>

到此这篇关于 php中123转一二三的方法好代码教程就介绍到这了。人生如同没有回头路的拾荒,想走得远,享受到更多精彩,你不能背得太重,必须经常清理背篓,该扔该留不要犹豫。更多相关 php中123转一二三的方法好代码教程内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

标签: php教程 php