소수점 관련입니다. 채택완료

9년 전 조회 3,624

표시값 관련입니다.

$fee = ceil($write["wr_1"]) * 1.025); 

wr_1이 예를 들어 9,900일때 1.025 곱하면 

10,147.5 인데요 

소수점은 무조건 올려서 10,148로 표시되게 하려고 

$fee = ceil($write["wr_1"]) * 1.025); 이렇게 하니 이상한 값이 나오네요 

10,148로 표시되게 하려면 어떻게 해야 할까요?

답변 5개

채택된 답변
+20 포인트

$fee = preg_replace("/,/", "", $write["wr_1"]) * 1.025;
echo number_format(ceil($fee)); 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

감사합니다~ 원하는 값에 맞추어 잘됩니다~

댓글을 작성하려면 로그인이 필요합니다.

소수는 무조건 올린다 하셨으니 ceil()이 맞습니다.

그리고 본문에 적으신 거 보면 괄호가 하나 더 들어가서 오류가 나는 겁니다. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

그렇군요,,,좋은 거 배웠습니다. 감사합니다~

댓글을 작성하려면 로그인이 필요합니다.

fb9c51bb0911de4f252c0189d7ff0910_1474740906_0537.jpg 

10148 만 나오면 되는 건가요?

<?php
$a = $list[$i]['wr_1'] * 1.025;
$fee = (floor($a) + 0.01 > $a) ? floor($a) : ceil($a);
echo $fee;
?>

이렇게 처리를 해보았습니다. < 조사사용을 잘못한 것 같음 ㅋ 히히

찾으시는 내용이 아니면.. 죄송해요. ㅡㅡ/

그리고요.

코드 보시면 아시겠지만.. 되나 안 되나도 몰라..

후딱 해보고자.. 합산처리를 리스트에서 했습니다.

알아서 고쳐주세요. ㅠㅠ

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

친절한 답변과 테스트까지 감사합니다~
다른 소스와 충돌때문인지 약간 값이ㅎ 달라지는 거 같아요.

댓글을 작성하려면 로그인이 필요합니다.

Copy
$write[wr_1] = 9900;$fee = ceil($write[wr_1] * 1.025);echo $fee;
 
로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

만두님 감사합니다. 그런데...
wr_1이 정해진게 아니고 변하는 값인데...
$write[wr_1] 부분은 제가 임의로 넣은것이고 해당 부분을 빼시면 됩니다,
늘 감사드려요~ 해볼게요~

댓글을 작성하려면 로그인이 필요합니다.

round 함수를 찾아보시면 간단히 해결 가능할것 같네요..

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

답변 감사합니다~ 찾아보겠습니다~

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고