◐ Shell
clean mode source ↗

PHP: gmp_testbit - Manual

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

gmp_testbitTests if a bit is set

Description

Parameters

num
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).
index

The bit to test

Return Values

Returns true if the bit is set in num, otherwise false.

Errors/Exceptions

An E_WARNING level error is issued when index is less than zero, and false is returned.

Examples

Example #1 gmp_testbit() example

<?php
$n = gmp_init("1000000");
var_dump(gmp_testbit($n, 1));
gmp_setbit($n, 1);
var_dump(gmp_testbit($n, 1));
?>

The above example will output:

Found A Problem?

bluej100@gmail

18 years ago

gmp_testbit will be very useful for my (over 64-bit) bitmask checking.

In the meantime, I think these are the best replacements.

Mostly full:

<?php
(gmp_scan1($a, $index) == $index)
?>

Mostly empty:

<?php
(gmp_scan0($a, $index) != $index)
?>

Still worst-case O(N), though.