숫자를 한글로 변환

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

------------------------------------------------------------------------------------------------
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,482
11년 전 조회 1,041
11년 전 조회 983
11년 전 조회 1,378
11년 전 조회 1,710
11년 전 조회 2,141
11년 전 조회 2,448
11년 전 조회 1,340
11년 전 조회 1,659
11년 전 조회 1,610
11년 전 조회 1,223
11년 전 조회 1,018
11년 전 조회 2,421
11년 전 조회 1,666
11년 전 조회 3,496
11년 전 조회 1,431
11년 전 조회 1,267
11년 전 조회 2,348
11년 전 조회 2,997
11년 전 조회 2,361
11년 전 조회 3,402
11년 전 조회 1,801
11년 전 조회 3,527
11년 전 조회 1,047
11년 전 조회 1,350
11년 전 조회 2,219
11년 전 조회 2,540
11년 전 조회 1,191
11년 전 조회 3,073
11년 전 조회 3,227
11년 전 조회 1,786
11년 전 조회 2,453
11년 전 조회 1,301
11년 전 조회 1,651
11년 전 조회 1,332
11년 전 조회 2,549
11년 전 조회 2,440
11년 전 조회 1,423
11년 전 조회 5,546
11년 전 조회 2,592
11년 전 조회 3,318
11년 전 조회 2,170
11년 전 조회 1,204
11년 전 조회 2,274
11년 전 조회 2,432
11년 전 조회 2,107
11년 전 조회 1,718
11년 전 조회 1,213
11년 전 조회 2,100
11년 전 조회 2,839
11년 전 조회 1,538
11년 전 조회 3,062
11년 전 조회 1,996
11년 전 조회 4,743
11년 전 조회 2,092
11년 전 조회 2,756
11년 전 조회 3,982
11년 전 조회 1,856
11년 전 조회 2,695
11년 전 조회 1,075
11년 전 조회 2,105
11년 전 조회 4,750
11년 전 조회 1,886
11년 전 조회 2,111
11년 전 조회 1,020
11년 전 조회 1,412
11년 전 조회 1,754
11년 전 조회 1,848
11년 전 조회 1,726
11년 전 조회 2,498
11년 전 조회 1,423
11년 전 조회 3,346
11년 전 조회 3,527
11년 전 조회 2,073
11년 전 조회 5,024
11년 전 조회 1만
11년 전 조회 2,901
11년 전 조회 1,395
11년 전 조회 3,505
11년 전 조회 2,842
11년 전 조회 2,364
11년 전 조회 1,277
11년 전 조회 4,485
11년 전 조회 972
11년 전 조회 1,480
11년 전 조회 1,929
11년 전 조회 2,152
11년 전 조회 2,115
11년 전 조회 4,888
11년 전 조회 1,890
11년 전 조회 1,106
11년 전 조회 2,305
11년 전 조회 1,854
11년 전 조회 2,876
11년 전 조회 1,118
11년 전 조회 1,806
11년 전 조회 1,713
11년 전 조회 1,864
11년 전 조회 1,479
11년 전 조회 1,435