본문 바로가기
Work

PHP) 숫자로 된 금액을 한글 표기로 변경하기

by 왕고미 2024. 12. 19.

 

가끔 일을 하다보면 숫자를 전부 한글로 표기해야할 경우가 생긴다.

 

금액을 표시하는 계약서류 등을 만든다던가....

 

ex) 123456 => '일십 이만 삼천 사백 오십 육 '

 

별거 아닌 거 같아도 의외로 좀 시간이 걸린다.

 

 

	function priceChange($price){
		if( $price<0 || empty($price) ) $price = 0;
		
		$priceUnit = array('원', '만', '억', '조', '경');
		$numbers = ['영', '일', '이', '삼', '사', '오', '육', '칠', '팔', '구'];

		$expUnit = 10000;
		$resultArray = array();
		$result = "";

		foreach($priceUnit as $k => $v){
			$unitResult = ( $price % pow($expUnit,$k+1) ) / (pow($expUnit, $k));
			$unitResult = floor($unitResult);

			if($unitResult>0){
				$resultArray[$k] = $unitResult;
			}
		}

		if(count($resultArray)>0){
			foreach($resultArray as $k => $v){
				if($v != 0){
					$result = $numbers[$v].$priceUnit[$k].' '.$result;
				}
			}
		}
		return $result;
	}

 

이렇게 사용하면 될 것 같다.

 

굳굳.