用法语将数字转换为字母 - php

时间:2014-09-04 10:58:26

标签: php

将字母表转换为数字 我想将数字转换为字母,但问题是十进制数字未转换

我认为这部分代码存在问题

if (null !== $fraction && is_numeric($fraction)) {
        $string .= $decimal;
        $words = array();
        foreach (str_split((string) $fraction) as $number) {
            $words[] = $dictionary[$number];
        }
        $string .= implode(' ', $words);
    }
return $string;
    }

    $montant_alph = convert_number_to_words($a)." MAD";

1 个答案:

答案 0 :(得分:0)

您不需要str_split将小数部分转换为数组。

$dictionary = array(
    1 => 'zero',
    1 => 'un',
    2 => 'deux',
    3 => 'trois',
    4 => 'quatre',
    5 => 'cinq',
    6 => 'six',
    7 => 'sept',
    8 => 'huit',
    9 => 'neuf',
);
// example 422.6543
$fraction = (integer) 6543;
$decimal = 'quatre deux deux / ';

if (null !== $fraction && is_numeric($fraction)) {
    $string .= $decimal;
    $words = array();
    $fraction = (string) $fraction;
    for ($i = 0; $i < strlen($fraction); ++$i) {
        $words[] = $dictionary[$fraction{$i}];
    }
    $string .= implode(' ', $words);
}