숫자를 한글로 변환
허접하지만 만들어보았습니다!
------------------------------------------------------------------------------------------------
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);
결과: 일만이천삼백사십오
댓글 4개
Terrorboy
11년 전
오호 이런 기막힌 생각을!!!
감사합니다.~
감사합니다.~
11년 전
언젠간 써먹을 수있는 자료인것 같습니다. 유용하게 사용하겠습니다.
8년 전
굿입니다.
잘 작동합니다.
공개해 주셔서 감사합니다~
잘 작동합니다.
공개해 주셔서 감사합니다~
coDribble
5년 전
많이 늦었지만 유용하게 잘쓰겠습니다~!! $number_arr 만 숫자로 바꿔서 사용해봤습니다
게시판 목록
개발자팁
개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5366 | 기타 |
nekoieye
|
1년 전 | 1110 | |
| 5365 | PHP | 1년 전 | 769 | ||
| 5364 | JavaScript | 1년 전 | 520 | ||
| 5363 | JavaScript | 1년 전 | 986 | ||
| 5362 | 1년 전 | 1225 | |||
| 5361 | JavaScript | 1년 전 | 1231 | ||
| 5360 |
그누보드이해하기
|
1년 전 | 769 | ||
| 5359 | 1년 전 | 1085 | |||
| 5358 | 1년 전 | 1090 | |||
| 5357 | 1년 전 | 803 | |||
| 5356 | 1년 전 | 365 | |||
| 5355 |
|
1년 전 | 582 | ||
| 5354 | 1년 전 | 1055 | |||
| 5353 |
|
1년 전 | 700 | ||
| 5352 |
|
1년 전 | 634 | ||
| 5351 | PHP | 1년 전 | 801 | ||
| 5350 | PHP | 1년 전 | 568 | ||
| 5349 | OS | 1년 전 | 642 | ||
| 5348 | 기타 | 1년 전 | 446 | ||
| 5347 | 기타 | 1년 전 | 625 | ||
| 5346 | 기타 | 1년 전 | 502 | ||
| 5345 | 기타 | 1년 전 | 393 | ||
| 5344 | JavaScript |
|
1년 전 | 422 | |
| 5343 | PHP |
|
1년 전 | 492 | |
| 5342 | jQuery | 1년 전 | 568 | ||
| 5341 | PHP |
|
1년 전 | 870 | |
| 5340 | Mobile |
슈퍼스타맨
|
1년 전 | 547 | |
| 5339 | 기타 |
|
1년 전 | 544 | |
| 5338 |
멀티트리플
|
2년 전 | 1288 | ||
| 5337 | 기타 |
슈퍼스타맨
|
2년 전 | 1780 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기