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.
gmp_testbit
(PHP 5 >= 5.3.0)
gmp_testbit — Tests if a bit is set
Opis
bool gmp_testbit
( resource
$a
, int $index
)Tests if the specified bit is set.
Parametry
-
a -
Może być zarówno numerem GMP zasób, lub numerycznym łańcuchem znaków, który można skonwertować z liter do liczb.
-
index -
The bit to test
Zwracane wartości
Zwraca TRUE w przypadku powodzenia, FALSE w
przypadku błędu.
Błędy/Wyjątki
E_WARNING is issued when
index is less than zero.
Przykłady
Przykład #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));
?>
Powyższy przykład wyświetli:
bool(false) bool(true)
bluej100@gmail
19-Jul-2007 08:48
