마스터욱 0 52 0 0

$max = 1.83567; 

$start = 1.83517;

$result = $max - $start; 

echo "result = {$result}"; //0.00049999999999994 

 

위 결과를 0.0005 로 예측했다면 그건 오산이다.

결과는 0.00049999999999994 로 나온다.

이게 바로 부동소수점 연산오류이다.

 

이것을 해결하는 방법은 뭐 찾아보면 여러가지가 있을수도 있겠지만, 내가 선택한 제일 확실한 방법은 DB에서 SELECT 를 하는 것이다.

 

select (1.83567 - 1.83517); 

=> 0.0005

 

위 처럼 하면 계산결과가 원하던 0.0005 로 말끔하게 나온다.

 

Comments


제목 글쓴이
CI(코드이그나이터) 세팅정리 마스터욱
PHP 사진파일의 GPS 좌표값 뽑아내기 마스터욱
CIBoard(코드이그나이터) 에서 접속통계 쌓지 않는 방법 마스터욱
CI(코드이그나이터) 컨트롤러 바로 호출하기 마스터욱
구글지도 API를 이용한 좌표값 -> 주소문자열 가져오기 마스터욱
날짜정보 리턴 마스터욱
imagecreatefrompng 가 안 먹던 현상 해결 마스터욱
CI(코드이그나이터) 의 템플릿 파일에서 모델(Model) 호출하기 마스터욱
자주 사용하는 정규식 마스터욱
스마트폰으로 찍은 사진의 회전을 자동으로 되돌려주는 소스 마스터욱
php library - pdfparser   마스터욱
스마트에디터에서 아이폰으로 이미지 업로드시에 상하/좌우 회전이 되던 현상 수정방법 마스터욱
코드이그나이터(CI) 쿼리 확인방법 마스터욱
부동소수점 해결방법 마스터욱
이니시스 모바일 연동에 대한 고찰&썰풀이 마스터욱
PHPExcel 로 엑셀파일 만들기 마스터욱
PHP fsockopen 으로 Authorization 인증시 참고코드 마스터욱
DELETE 시에 자동백업하기 마스터욱
코드이그나이터, 씨아이보드(ciboard) 중복로그인 막기 소스코드 마스터욱
코드이그나이터(CodeIgniter) config 호출방법 마스터욱
카테고리