부동 소수점 숫자를 사용한 숫자 형식 지정
숫자 값으로 작업할 때 특정 수준의 정밀도로 표시해야 하는 경우가 많습니다. 예를 들어 소수점 두 자리. 그러나 루프를 사용하여 숫자를 에코하는 스크립트에서는 반올림 오류가 발생하여 원하는 정밀도 없이 값이 표시될 수 있습니다.
이 문제를 해결하려면 다음 코드를 고려하세요.
$inc = 0.25; $start = 0.25; $stop = 5.00; while ($start != ($stop + $inc)) { echo "<option>" . $start . "</option>"; $start += $inc; }
여기서 코드에서는 부동 소수점 반올림으로 인해 5.00은 5로 나타나고, 4.50은 4.5로 나타납니다.
이 문제를 해결하려면 다음을 사용하세요. printf 함수:
printf("%01.2f", $start)
이 구문은 .2f가 소수점 앞에 1개의 0이 있고 소수점 두 자리가 있는 부동 소수점 숫자를 나타내는 형식 문자열을 지정합니다. 이 코드는 원하는 대로 5.00, 4.00, 3.00 및 3.50을 효과적으로 표시합니다.
또는 sprintf 함수를 사용하여 형식이 지정된 값을 변수에 저장할 수 있습니다.
$var = sprintf("%01.2f", $start)
다른 옵션 십진수와 천 단위를 지정할 수 있는 number_format 함수를 사용하는 것입니다. 구분 기호:
number_format($start, 2)
이러한 형식 지정 옵션을 활용하면 부동 소수점 반올림 오류에 관계없이 숫자 값이 적절한 정밀도로 표시되도록 할 수 있습니다.
위 내용은 내 PHP 스크립트에서 부동 소수점 숫자의 형식을 정확하게 지정하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!