php 부동소수점 소수 비교 연산 방법1 php 부동소수점 소수 비교 연산 방법 문제: 0.111 값과 0.111값을 비교 인간의 사고방식으로는 0이 출력되어야 하는데 -값이 출력되는 현상이 발생한다. ex) $abc - $abc2 $abc 와 $abc2 값 출력해봐도 0.111로 같은 값이 출력된다. floor($abc*10000000) floor($abc2*10000000) 로 데이터를 찍어 봐았다. 1109999 1110000 와 같이 출력되는 것을 확인했다. 내부적으로 데이터값이 뭔가 이상한것을 알게 되었다. 해결방법 : strval() 함수로 실수를 문자형으로 바꿔서 비교하면 됨 strval()함수를 사용해서 고정값을 문자열로 변경해서 아래와 같이 실행했더니 값이 자동으로 float 로 변환하며 연산하여 0값이 정상적으로 출력된다. strval($a.. 2021. 1. 19. 이전 1 다음