gmp_testbit
(PHP 5 >= 5.3.0)
gmp_testbit — Проверка, установлен ли бит в 1
Описание
bool gmp_testbit
( resource
$a
, int $index
)Проверяет, установлен ли заданный бит в 1.
Список параметров
-
a
-
Может быть как числом GMP, так и строкой, при условии, что ее значение можно конвертировать в число.
-
index
-
Проверяемый бит
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Ошибки
E_WARNING
возникает, когда
значение index
отрицательно.
Примеры
Пример #1 Пример использования gmp_testbit()
<?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)
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Математические расширения
- GNU Вычисления с увеличенной точностью
- gmp_abs
- gmp_add
- gmp_and
- gmp_clrbit
- gmp_cmp
- gmp_com
- gmp_div_q
- gmp_div_qr
- gmp_div_r
- gmp_div
- gmp_divexact
- gmp_export
- gmp_fact
- gmp_gcd
- gmp_gcdext
- gmp_hamdist
- gmp_import
- gmp_init
- gmp_intval
- gmp_invert
- gmp_jacobi
- gmp_legendre
- gmp_mod
- gmp_mul
- gmp_neg
- gmp_nextprime
- gmp_or
- gmp_perfect_square
- gmp_popcount
- gmp_pow
- gmp_powm
- gmp_prob_prime
- gmp_random_bits
- gmp_random_range
- gmp_random_seed
- gmp_random
- gmp_root
- gmp_rootrem
- gmp_scan0
- gmp_scan1
- gmp_setbit
- gmp_sign
- gmp_sqrt
- gmp_sqrtrem
- gmp_strval
- gmp_sub
- gmp_testbit
- gmp_xor
Коментарии
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.