Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【PHP8.x】RoundingMode::HalfEven定数の使い方

HalfEven定数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

HalfEven定数は、PHP 8で導入されたRoundingModeという列挙型(enum)の一部として、数値を特定の規則で丸める際の挙動を指定するために使用される定数です。この定数が示す丸め方は、「最近接偶数への丸め」または「銀行家の丸め」として知られる方式です。

この方式では、まず対象となる数値の小数部が0.5よりも小さい場合は単純に切り捨てられ、例えば2.3は2になります。次に、小数部が0.5よりも大きい場合は切り上げられ、例えば2.7は3になります。HalfEven定数の最も重要な特徴は、小数部がちょうど0.5の場合の処理にあります。この場合、丸め対象の整数部分が偶数であれば切り捨てられ、奇数であれば切り上げられ、結果として最も近い偶数に丸められます。具体例として、2.5は最も近い偶数である2に丸められ、3.5は最も近い偶数である4に丸められます。負の数に対しても同様で、-2.5は-2に、-3.5は-4に丸められます。

HalfEven定数は、主にPHP 8で強化されたround()関数や、国際化機能を提供するIntl拡張のNumberFormatterクラスなど、数値の丸め処理を精密に制御する必要がある場面で利用されます。この丸め方は、多くの数値を処理する際に、常に0.5を切り上げる他の丸め方で生じやすい統計的な偏り(バイアス)を抑制し、より公平で統計的に健全な結果を得ることを目的としています。

構文(syntax)

1<?php
2use RoundingMode;
3
4RoundingMode::HalfEven;
5?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ