How to round a number to the next power of 2 in PHP

1 Answer

0 votes
/**
 * Rounds an integer up to the next power of 2.
 *
 * return int The next power of 2 greater than or equal to $n
 */
function roundToNextPowerOf2(int $n): int {
    if ($n <= 0) {
        return 1;
    }
    
    return (int) pow(2, ceil(log($n, 2)));
}

$num = 21;
echo "Next power of 2: " . roundToNextPowerOf2($num) . PHP_EOL;



/*
run:

Next power of 2: 32

*/

 



answered Oct 29, 2025 by avibootz

Related questions

...