gmp_scan1

Scan for 1

Description

int gmp_scan1(GMPintstring $num1, int $start)

Scans num1, starting with bit start, towards more significant bits, until the first set bit is found.

Parameters

num1

The number to scan.

A GMP object, an int, or a string that can be interpreted as a number following the same logic as if the string was used in gmp_init with automatic base detection (i.e. when base is equal to 0).

start

The starting bit.

Return Values

Returns the index of the found bit, as an int. If no set bit is found, -1 is returned.

Examples

Example #1 gmp_scan1 example

<?php
// "1" bit is found at position 3. index starts at 0
$s1 = gmp_init("01000", 2);
echo gmp_scan1($s1, 0) . "\n";

// "1" bit is found at position 9. index starts at 5
$s2 = gmp_init("01000001111", 2);
echo gmp_scan1($s2, 5) . "\n";
?>

The above example will output:

3
9