> 백엔드 개발 > PHP 튜토리얼 > PHP에서 아라비아 숫자를 중국 대문자 숫자로 변환하는 방법은 무엇입니까? (코드 예)

PHP에서 아라비아 숫자를 중국 대문자 숫자로 변환하는 방법은 무엇입니까? (코드 예)

青灯夜游
풀어 주다: 2023-04-04 13:00:01
앞으로
3082명이 탐색했습니다.

이 글의 내용은 PHP에서 아라비아 숫자를 한자 대문자로 변환하는 방법을 소개하는 것인가요? (코드 예). 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

서문: 외국 무역회사 견적 조회 시스템 작업을 할 때 금액에 대한 데이터를 기록하곤 했습니다. 일반적으로 은행에서 사용하는 아라비아 숫자를 대문자로 변환해야 합니다. 코드 예시:

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

/*

 * 数字金额转换成中文大写金额的函数

 * String Int  $num  要转换的小写数字或小写字符串

 * return 大写数字

 */

public function num_to_rmb($num){

    $c1 "零壹贰叁肆伍陆柒捌玖";

    $c2 "分角元拾佰仟万拾佰仟亿";

    //精确到分后面就不要了,所以只留两个小数位

    $num round($num, 2); 

    //将数字转化为整数

    $num $num * 100;

    if (strlen($num) > 10) {

        return "金额太大,请检查";

    

    $i = 0;

    $c "";

    while (1) {

        if ($i == 0) {

            //获取最后一位数字

            $n substr($numstrlen($num)-1, 1);

        else {

            $n $num % 10;

        }

        //每次将最后一位数字转化为中文

        $p1 substr($c1, 3 * $n, 3);

        $p2 substr($c2, 3 * $i, 3);

        if ($n != '0' || ($n == '0' && ($p2 == '亿' || $p2 == '万' || $p2 == '元'))) {

            $c $p1 $p2 $c;

        else {

            $c $p1 $c;

        }

        $i $i + 1;

        //去掉数字最后一位了

        $num $num / 10;

        $num = (int)$num;

        //结束循环

        if ($num == 0) {

            break;

        

    }

    $j = 0;

    $slen strlen($c);

    while ($j $slen) {

        //utf8一个汉字相当3个字符

        $m substr($c$j, 6);

        //处理数字中很多0的情况,每次循环去掉一个汉字“零”

        if ($m == '零元' || $m == '零万' || $m == '零亿' || $m == '零零') {

            $left substr($c, 0, $j);

            $right substr($c$j + 3);

            $c $left $right;

            $j $j-3;

            $slen $slen-3;

        

        $j $j + 3;

    

    //这个是为了去掉类似23.0中最后一个“零”字

    if (substr($cstrlen($c)-3, 3) == '零') {

        $c substr($c, 0, strlen($c)-3);

    }

    //将处理的汉字加上“整”

    if (empty($c)) {

        return "零元整";

    }else{

        return $c "整";

    }

}

//echo num_to_rmb(23000000.00); //贰仟叁佰万元整

로그인 후 복사

요약: 위 내용은 모두 이 글에서 소개한 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다. 더 많은 관련 비디오 튜토리얼을 보려면

PHP 튜토리얼

을 방문하세요!

위 내용은 PHP에서 아라비아 숫자를 중국 대문자 숫자로 변환하는 방법은 무엇입니까? (코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿