Updated PHP Windows builds for Brotli security fix

gmp_testbit

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

gmp_testbit — Teste si un bit est défini

Description

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

Teste si un bit est défini.

Liste de paramètres

num

Un objet GMP, un entier, ou un chaîne de caractères qui peut être interprété comme un nombre suivant la même logique que si la chaîne était utilisée dans gmp_init() avec détection automatique de la base (c'est-à-dire lorsque base est égal à 0).

index

Le bit à tester

Valeurs de retour

Retourne true si le bit est défini dans la ressource num, false sinon.

Erreurs / Exceptions

Lève une ValueError si index est négatif ou, à partir de PHP 8.5.0, trop grand.

Avant PHP 8.0.0, une E_WARNING était émise et false était retourné à la place.

Exemples

Exemple #1 Exemple avec gmp_testbit()

<?php
$n = gmp_init("1000000");
var_dump(gmp_testbit($n, 1));
gmp_setbit($n, 1);
var_dump(gmp_testbit($n, 1));
?>

L'exemple ci-dessus va afficher :

bool(false)
bool(true)

Voir aussi

+add a note

User Contributed Notes 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.
To Top