Maison  >  Article  >  développement back-end  >  Tutoriel sur la méthode de conversion de nombre PHP en fonction majuscule

Tutoriel sur la méthode de conversion de nombre PHP en fonction majuscule

小云云
小云云original
2017-12-13 15:41:131521parcourir

Dans cet article, nous partageons principalement la méthode de la fonction PHP pour convertir les nombres en lettres majuscules. Lorsque nous rédigeons une facture de paiement, nous devons remplir les majuscules du montant numérique. Pour être honnête, je ne peux vraiment pas écrire. si je ne l'écris pas habituellement, afin d'éviter des scènes embarrassantes à l'avenir, j'ai même fait de mon mieux pour pratiquer ces dix mots. Haha, bien sûr, nous pouvons également convertir en PHP, nous avons donc la fonction de conversion suivante :

/**
 * 金额的小写转大写
 * @param $ns int 输入的数字
 */

function cny($ns) {
    static $cnums = array("零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"),
    $cnyunits = array("圆", "角", "分"),
    $grees = array("拾", "佰", "仟", "万", "拾", "佰", "仟", "亿");
    list($ns1, $ns2) = explode(".", $ns, 2);
    $ns2 = array_filter(array($ns2[1], $ns2[0]));
    $ret = array_merge($ns2, array(implode("", _cny_map_unit(str_split($ns1), $grees)), ""));
    $ret = implode("", array_reverse(_cny_map_unit($ret, $cnyunitss)));
    return str_replace(array_keys($cnums), $cnums, $ret);
}

function _cny_map_unit($list, $units) {
    $ul = count($units);
    $xs = array();
    foreach (array_reverse($list) as $x) {
        $l = count($xs);
        if ($x != "0" || !($l % 4))
            $n = ($x == '0' ? '' : $x) . ($units[($l - 1) % $ul]);
        else
            $n = is_numeric($xs[0][0]) ? $x : '';
        array_unshift($xs, $n);
    }
    return $xs;
}

Afficher le texte original>> Chaussures pour enfants Mamba - Blog - Numéro PHP en fonction majuscule


Lorsque nous rédigeons la facture de paiement, nous devons écrire le montant numérique en majuscules. Pour être honnête, je ne l'écris pas aux heures ordinaires afin d'éviter les scènes embarrassantes. à l’avenir, je suis même allé délibérément pratiquer ces dix mots. Haha, bien sûr, nous pouvons également convertir en php, nous avons donc la fonction de conversion suivante :

/**
 * 金额的小写转大写
 * @param $ns int 输入的数字
 */

function cny($ns) {
    static $cnums = array("零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"),
    $cnyunits = array("圆", "角", "分"),
    $grees = array("拾", "佰", "仟", "万", "拾", "佰", "仟", "亿");
    list($ns1, $ns2) = explode(".", $ns, 2);
    $ns2 = array_filter(array($ns2[1], $ns2[0]));
    $ret = array_merge($ns2, array(implode("", _cny_map_unit(str_split($ns1), $grees)), ""));
    $ret = implode("", array_reverse(_cny_map_unit($ret, $cnyunitss)));
    return str_replace(array_keys($cnums), $cnums, $ret);
}

function _cny_map_unit($list, $units) {
    $ul = count($units);
    $xs = array();
    foreach (array_reverse($list) as $x) {
        $l = count($xs);
        if ($x != "0" || !($l % 4))
            $n = ($x == '0' ? '' : $x) . ($units[($l - 1) % $ul]);
        else
            $n = is_numeric($xs[0][0]) ? $x : '';
        array_unshift($xs, $n);
    }
    return $xs;
}

Recommandations associées :

php convertit les nombres en chaînes de longueur spécifiée Fonction

Introduction détaillée à l'exemple du numéro PHP vers la fonction chinoise

Explication détaillée des pièges les plus susceptibles de se produire avec les nombres PHP et cordes

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn