채택완료

소수점 관련입니다.

2016-09-24 (토) 23:12:34 3,925

표시값 관련입니다.

$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개 / 댓글 7개

채택된 답변
+20 포인트

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

답변에 대한 댓글 1개

2016-09-26 (월) 03:48:39
감사합니다~ 원하는 값에 맞추어 잘됩니다~
2016-09-25 (일) 13:36:14

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

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

답변에 대한 댓글 1개

2016-09-26 (월) 03:47:24
그렇군요,,,좋은 거 배웠습니다. 감사합니다~
2016-09-25 (일) 03:16:27

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개

2016-09-26 (월) 03:46:58
친절한 답변과 테스트까지 감사합니다~
다른 소스와 충돌때문인지 약간 값이ㅎ 달라지는 거 같아요.
2016-09-25 (일) 00:06:57
Copy
$write[wr_1] = 9900;$fee = ceil($write[wr_1] * 1.025);echo $fee;
 

답변에 대한 댓글 3개

2016-09-25 (일) 00:57:27
만두님 감사합니다. 그런데...
wr_1이 정해진게 아니고 변하는 값인데...
2016-09-25 (일) 13:24:57
$write[wr_1] 부분은 제가 임의로 넣은것이고 해당 부분을 빼시면 됩니다,
2016-09-26 (월) 03:45:10
늘 감사드려요~ 해볼게요~

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

답변에 대한 댓글 1개

2016-09-26 (월) 03:44:34
답변 감사합니다~ 찾아보겠습니다~

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