PHP에서는 부동 소수점 번호를 처리 할 때 종종 "반올림"해야하는 시나리오를 만듭니다. 현재 Ceil () 및 Round () 가 가장 일반적인 두 가지 기능입니다. 그것들은 모두 정수 변환에 떠 다니는 포인트 숫자를 포함하지만, 그들의 행동은 해당 시나리오와 매우 다릅니다. 이 기사는이 두 기능의 차이점을 깊이있는 차이점을 소개하고 적절한 사용 시나리오를 분석합니다.
Ceil () 은 영어 천장 (천장)의 약어입니다. 이름에서 알 수 있듯이 그 기능은 숫자를 위쪽으로 반올림하는 것입니다. 분수 부품에 관계없이 정수가 아닌 한 Ceil ()은 그것을 추가하고 가장 가까운 더 큰 정수를 반환합니다.
보시다시피, Ceil () 은 양수에 대해 "하나를 추가"하는 반면, 음수의 경우 "0"방향으로 둥글게됩니다.
페이징 로직에서 총 페이지 수를 계산하십시오 <br> 총 레코드 수와 페이지 당 표시되는 조각 수를 알고 있으면 일반적으로 총 페이지 수를 계산하려면 Ceil ()을 사용해야합니다.
<code> $ total_items = 105; $ items_per_page = 10; $ total_pages = CEIL ($ total_items / $ items_per_page); // 결과는 11 </code>입니다손실을 피하기 위해 가격이 반박됩니다 <br> 예를 들어, 전자 상거래 웹 사이트에서 최소 결제 금액을 설정할 때 할인 된 가격을 반올림해야 할 수도 있습니다.
<code> $ 할인 _price = 19.2; $ final_price = CEIL ($ discounted_price); // 결과는 20 </code>입니다Round ()는 숫자를 반올림하여 숫자를 "인간"으로 만들 수있는 함수입니다. 기본적으로 소수점을 반올림하거나 두 번째 매개 변수를 통해 예약 된 자리 수를 지정할 수 있습니다.
PHP의 Round ()는 "짝수 반올림 방법"이라고도하는 "Banker Rounding Method"를 사용한다는 점에 주목할 가치가 있습니다. .5 가 끝날 때 소수점을 처리 할 때 이전 숫자가 짝수인지에 따라 포기 할 것인지 또는 운반할지 여부가 결정됩니다.
<code> 에코 라운드 (2.5); // 출력 2 에코 라운드 (3.5); // output 4 </code>이것은 많은 숫자가 축적 될 때 오류를 피합니다.
사용자 친화적 인 값을 표시 <br> 예를 들어, 제품 등급을 표시하려는 경우 :
<code> $ 평균 _rating = 4.666; 에코 라운드 ($ Average_rating, 1); // output 4.7 </code>금융 및 회계 시스템의 수치 균형 <br> 은행가 반올림 방법은 누적 오류를 줄일 수 있으므로 종종 재무 통계에 사용됩니다.
<code> $ price = 2.5; $ rounded = round ($ price); // 결과는 2 </code>입니다차트 데이터 처리 <br> 차트에서 적절한 반올림은 데이터를보다 직관적이고 이해할 수있게 할 수 있습니다.
<code> $ 백분율 = (45 / 123) * 100; 에코 라운드 ($ %, 2); // 출력 36.59 </code>기능 | 행동 | 시나리오를 사용하십시오 |
---|---|---|
CEIL () | 둥글게 | 페이징 로직, 값이 원래 값보다 작지 않다고 보장합니다. |
둥근() | 반올림 (숫자 방법) | 인간화 된 디스플레이, 재무 계산, 차트 정확도 제어 |
Ceil () 또는 Round ()를 사용하기로 선택할 때 키는 결과가 원래 값 ( Ceil () 사용)보다 적지 않도록하거나 결과가 원래 값 ( Round () 사용) 의 "평균"표현에 더 가깝게 하려는지 여부입니다.
예를 들어, 인벤토리 페이징 디스플레이에서 이러한 페이징 기능을 사용하여 전자 상거래 백엔드 관리 시스템을 개발하고 있습니다.
<code> 함수 getTotalPages ($ total_items, $ items_per_page) {return ceil ($ total_items / $ items_per_page); } </code>사용자 만족도 등급 시스템을 다루는 경우 다음을 수행 할 수 있습니다.
<code> 함수 공식 형식 ($ atr) {return Round ($ atrat, 1); } </code>