PHP 8.6.0 Beta 1 is available for testing

gmp_testbit

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

gmp_testbitПроверка, установлен ли бит в 1

Описание

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

Проверяет, установлен ли заданный бит в 1.

Список параметров

num
Объект GMP , целое число (int ) или строка (string ), которая интерпретируется как число по той же логике как если бы строка использовалась в функции gmp_init() с автоматическим определением основания системы счисления — когда значение параметра base равно 0.
index

Проверяемый бит

Возвращаемые значения

Возвращает true , если бит установлен в num, иначе false .

Ошибки

Выбрасывается ошибка уровня E_WARNING , если index меньше нуля, и возвращается false .

Примеры

Пример #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)

Смотрите также

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей 1 note

up
1
bluej100@gmail
19 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.
+Добавить

AltStyle によって変換されたページ (->オリジナル) /