숫자를 한글로 변환

허접하지만 만들어보았습니다!

------------------------------------------------------------------------------------------------
1. 소스
------------------------------------------------------------------------------------------------
//# 숫자를 한글로 변환
Function getConvertNumberToKorean($_number)
{
// 0부터 9까지의 한글 배열
$number_arr = array('','일','이','삼','사','오','육','칠','팔','구');

// 천자리 이하 자리 수의 한글 배열
$unit_arr1 = array('','십','백','천');

// 만자리 이상 자리 수의 한글 배열
$unit_arr2 = array('','만','억','조','경','해');

// 결과 배열 초기화
$result = array();

// 인자값을 역순으로 배열한 후, 4자리 기준으로 나눔
$reverse_arr = str_split(strrev($_number), 4);

foreach($reverse_arr as $reverse_idx=>$reverse_number){
// 1자리씩 나눔
$convert_arr = str_split($reverse_number);
$convert_idx = 0;

foreach($convert_arr as $split_idx=>$split_number){
// 해당 숫자가 0일 경우 처리되지 않음
if(!empty($number_arr[$split_number])){
// 0부터 9까지 한글 배열과 천자리 이하 자리 수의 한글 배열을 조합하여 글자 생성
$result[$result_idx] = $number_arr[$split_number].$unit_arr1[$split_idx];

// 반복문의 첫번째에서는 만자리 이상 자리 수의 한글 배열을 앞 전 배열에 연결하여 조합
if(empty($convert_idx)) $result[$result_idx] .= $unit_arr2[$reverse_idx];
++$convert_idx;
}

++$result_idx;
}
}

// 배열 역순으로 재정렬 후 합침
$result = implode('', array_reverse($result));

// 결과 리턴
return $result;
}


------------------------------------------------------------------------------------------------
2. 예제
------------------------------------------------------------------------------------------------
실행: getConvertNumberToKorean(12345);
결과: 일만이천삼백사십오
|

댓글 2개

오호 이런 기막힌 생각을!!!
감사합니다.~
언젠간 써먹을 수있는 자료인것 같습니다. 유용하게 사용하겠습니다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
11년 전 조회 1,540
11년 전 조회 1,091
11년 전 조회 1,034
11년 전 조회 1,437
11년 전 조회 1,763
11년 전 조회 2,194
11년 전 조회 2,508
11년 전 조회 1,399
11년 전 조회 1,721
11년 전 조회 1,662
11년 전 조회 1,278
11년 전 조회 1,080
11년 전 조회 2,470
11년 전 조회 1,720
11년 전 조회 3,552
11년 전 조회 1,487
11년 전 조회 1,328
11년 전 조회 2,401
11년 전 조회 3,046
11년 전 조회 2,408
11년 전 조회 3,457
11년 전 조회 1,853
11년 전 조회 3,587
11년 전 조회 1,107
11년 전 조회 1,409
11년 전 조회 2,265
11년 전 조회 2,593
11년 전 조회 1,240
11년 전 조회 3,122
11년 전 조회 3,277
11년 전 조회 1,840
11년 전 조회 2,508
11년 전 조회 1,357
11년 전 조회 1,711
11년 전 조회 1,382
11년 전 조회 2,601
11년 전 조회 2,491
11년 전 조회 1,472
11년 전 조회 5,599
11년 전 조회 2,650
11년 전 조회 3,374
11년 전 조회 2,226
11년 전 조회 1,258
11년 전 조회 2,328
11년 전 조회 2,495
11년 전 조회 2,157
11년 전 조회 1,767
11년 전 조회 1,277
11년 전 조회 2,151
11년 전 조회 2,905
11년 전 조회 1,593
11년 전 조회 3,109
11년 전 조회 2,051
11년 전 조회 4,807
11년 전 조회 2,143
11년 전 조회 2,802
11년 전 조회 4,027
11년 전 조회 1,906
11년 전 조회 2,748
11년 전 조회 1,124
11년 전 조회 2,162
11년 전 조회 4,801
11년 전 조회 1,939
11년 전 조회 2,168
11년 전 조회 1,078
11년 전 조회 1,470
11년 전 조회 1,804
11년 전 조회 1,904
11년 전 조회 1,794
11년 전 조회 2,548
11년 전 조회 1,480
11년 전 조회 3,402
11년 전 조회 3,579
11년 전 조회 2,124
11년 전 조회 5,080
11년 전 조회 1만
11년 전 조회 2,954
11년 전 조회 1,448
11년 전 조회 3,561
11년 전 조회 2,902
11년 전 조회 2,407
11년 전 조회 1,336
11년 전 조회 4,532
11년 전 조회 1,016
11년 전 조회 1,520
11년 전 조회 1,975
11년 전 조회 2,195
11년 전 조회 2,158
11년 전 조회 4,937
11년 전 조회 1,941
11년 전 조회 1,149
11년 전 조회 2,359
11년 전 조회 1,909
11년 전 조회 2,931
11년 전 조회 1,159
11년 전 조회 1,864
11년 전 조회 1,772
11년 전 조회 1,908
11년 전 조회 1,522
11년 전 조회 1,488