©
本文档使用
php.cn手册 发布
(PHP 5, PHP 7 >= 5.3.0)
gmp_testbit — Tests if a bit is set
$a
, int $index
)Tests if the specified bit is set.
a
可以是一个 GMP 数据 resouce ,或一个可以转换为数值的字符串。
index
The bit to test
Returns TRUE
if the bit is set in resource $a
,
otherwise FALSE
.
An E_WARNING
level error is issued when
index
is less than zero, and FALSE
is returned.
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 ));
?>
以上例程会输出:
bool(false) bool(true)
[#1] bluej100@gmail [2007-07-19 14:48:38]
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.