В дополнение к вышеприведенным решениям, таким как $result = intval($a / $b)
, существует один конкретный случай:
Если вам нужно целочисленное деление (без остатка) на некоторую степень двойки ($b
равно 2 ^ N
), вы можете использовать операцию побитового сдвига вправо:
$result = $a >> $N;
где $ N - это число от 1 до 32 в 32-разрядной операционной системе или 64 для 64-разрядных.
Иногда это полезно, потому что самое быстрое решение для случая $ b - это некоторая степень двойки.
И есть обратный (будьте осторожны из-за переполнения!) Операция умножения на степень двух:
$result = $a << $N;
Надеюсь, это кому-то тоже поможет.