How to count the trailing zeros in a binary number using PHP

2 Answers

0 votes
function countTrailingZeros($n) {
    $count = 0;
    while ($n != 0 && ($n & 1) == 0) {
        $count++;
        $n >>= 1;
    }
    
    return $count;
}

$number = 80; // binary: 1010000

echo "Number of Trailing Zeros: " . countTrailingZeros($number);




/*
run:

Number of Trailing Zeros: 4

*/

 



answered Jul 23, 2025 by avibootz
0 votes
// Function to convert an integer to binary string
function toBinary(int $number): string {
    return decbin($number);
}

// Function to count trailing zeros in a binary string
function countTrailingZerosFromBinary(string $binary): int {
    return strlen($binary) - strlen(rtrim($binary, '0'));
}

// Master function: get trailing zeros from a number
function countTrailingZeros(int $number): int {
    return countTrailingZerosFromBinary(toBinary($number));
}

$number = 80;

echo "Number of Trailing Zeros: " . countTrailingZeros($number);



/*
run:

Number of Trailing Zeros: 4

*/

 



answered Jul 23, 2025 by avibootz
...