안녕하세요.
소수점 표현하는데 있어 에로사항이 있어 질문 드립니다.
예를들어 50000.111에 자릿수 ,를 찍어야 해서 number_format을 사용하면 50,000으로 출력이 되어서 number_format(50000.111 , 3)을 하면 50,000.111이 출력이 되는데 문제는 소수점이 없을경우 50,000.000이 출력이 되어버린다는 겁니다...
소수점이 없는 숫자일경우는 출력이 안되도록 50,000만 출력이 되고 소수가 있을경우에만 50,000.111 이렇게 표시하려면 어떤 방법으로 해야될까요?
|
답변 5개
채택된 답변
+20 포인트
아래처럼 함수를 만들고 조건문 사용하시면 됩니다.
Copy
function x_number_format ($number , $decimals = 0 , $dec_point = "." , $thousands_sep = ",") {
if(!is_numeric($number)) return;
if(is_float($number)) {
return number_format($number, $decimals, $dec_point, $thousands_sep);
} else {
return number_format($number, 0, $dec_point, $thousands_sep);
}
}
echo x_number_format(50000.111, 3);
echo "\n";
echo x_number_format(50000, 3);
echo "\n";
답변을 작성하려면 로그인이 필요합니다.