저장된 값이 double형으로 출력되는 문제

저장된 값이 double형으로 출력되는 문제

QA

저장된 값이 double형으로 출력되는 문제

본문

디비에 0.00003718 이란 값이 저장되어 있습니다.

왜 자꾸 출력이 3.718E-5 라는 더블형으로 출력될까요? ㅜㅜ

형변환을 해봐도 안되고 ㅜㅜ

 

echo (string)$aaa; 해봐도 안되고

echo settype($aaa, 'string'); 해봐도 안되고

echo strval($aaa); 해봐도 안되고

 

그냥 저장된 값 그대로 보여주고 싶은데...

처음부터 다시 공부해야 하나보네요 전혀 모르겠...

조언 부탁드립니다. (__)

 

 

이 질문에 댓글 쓰기 :

답변 2

function convertFloat($n) {    
    if (!strpos($n, 'E')) return $n;
    $ar = explode('E-', $n); 
    return '0.' . str_repeat('0', --$ar[1]) . str_replace('.' ,'', $ar[0]);
}

원래 저장도 그렇게 3.718E-5 되어 있습니다.

단지 그걸 보여주는 쪽에서 0.00003718 이렇게 보여주기도 하는거죠

 

자리수 최대 범위를 안다면 sprintf("%.8f",$aaa) 같은 방식으로 하면 강제로 바꿀수 있을지도?

나시님 감사합니다. 디비에는 제가 문자로 0.00003718로 등록해놨습니다. 그런데 어쩐일인지 더블형으로 계속 출력되더라구요 ㅜㅜ 원인은 못찾았지만 해결했습니다. 감사합니다. ^^

답변을 작성하시기 전에 로그인 해주세요.
전체 14
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT