PHP 8.3.0 RC 6 available for testing

gmp_testbit

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

gmp_testbitTests if a bit is set

说明

gmp_testbit(GMP|int|string $num, int $index): bool

Tests if the specified bit is set.

参数

num

GMP 对象或 int ,或数字string

index

The bit to test

返回值

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

错误/异常

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

示例

示例 #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));
?>

以上示例会输出:

 
bool(false)
bool(true)

参见

add a note

User Contributed Notes 1 note

up
1
bluej100@gmail
16 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.
To Top