Automattic\WooCommerce\Utilities
NumberUtil::round()
Round a number using the built-in round function, but unless the value to round is numeric (a number or a string that can be parsed as a number), apply 'floatval' first to it (so it will convert it to 0 in most cases).
This is needed because in PHP 7 applying round to a non-numeric value returns 0, but in PHP 8 it throws an error. Specifically, in WooCommerce we have a few places where round('') is often executed.
Метод класса: NumberUtil{}
Хуков нет.
Возвращает
float
. The value rounded to the given precision as a float, or the supplied default value.
Использование
$result = NumberUtil::round( $val, $precision, $mode ) : float;
- $val(разное) (обязательный)
- The value to round.
- $precision(int)
- The optional number of decimal digits to round to.
- $mode(int)
- A constant to specify the mode in which rounding occurs.
По умолчанию: PHP_ROUND_HALF_UP
Код NumberUtil::round() NumberUtil::round WC 8.7.0
public static function round( $val, int $precision = 0, int $mode = PHP_ROUND_HALF_UP ) : float { if ( ! is_numeric( $val ) ) { $val = floatval( $val ); } return round( $val, $precision, $mode ); }