PHP 8.4.0 RC4 available for testing

La classe QuickHashIntSet

(PECL quickhash >= Unknown)

Introduction

Cette classe enveloppe un ensemble contenant des nombres entiers.

Les ensembles peuvent être utilisés pour stocker des valeurs uniques avec foreach car l'interface Iterator est implémentée. L'ordre dans lequel les éléments sont retournés n'est pas garanti.

Synopsis de la classe

class QuickHashIntSet {
/* Constantes */
const int CHECK_FOR_DUPES = 1;
const int HASHER_NO_HASH = 256;
const int HASHER_JENKINS1 = 512;
const int HASHER_JENKINS2 = 1024;
/* Méthodes */
public add(int $key): bool
public __construct(int $size, int $options = ?)
public delete(int $key): bool
public exists(int $key): bool
publicgetSize(): int
public static loadFromFile(string $filename, int $size = ?, int $options = ?): QuickHashIntSet
public static loadFromString(string $contents, int $size = ?, int $options = ?): QuickHashIntSet
public saveToFile(string $filename): void
}

Constantes pré-définies

QuickHashIntSet::CHECK_FOR_DUPES

Si activé, l'ajout d'éléments dupliqués à un ensemble (via QuickHashIntSet::add() ou QuickHashIntSet::loadFromFile()) entraînera la suppression de ces éléments de l'ensemble. Cela prendra plus de temps, donc n'utilisez cette option que si nécessaire.

QuickHashIntSet::DO_NOT_USE_ZEND_ALLOC

Désactive l'utilisation du gestionnaire de mémoire interne de PHP pour les structures de jeu internes. Avec cette option activée, les allocations internes ne compteront pas pour les paramètres memory_limit.

QuickHashIntSet::HASHER_NO_HASH

Sélectionne de ne pas utiliser de fonction de hachage, mais simplement utiliser un modulo pour trouver l'index de la liste de seaux. Cela n'est pas plus rapide que le hachage normal, et donne plus de collisions.

QuickHashIntSet::HASHER_JENKINS1

Ceci est la fonction de hachage par défaut pour transformer les hachages entiers en index de liste de seaux.

QuickHashIntSet::HASHER_JENKINS2

Sélectionne un algorithme de hachage de variante.

Sommaire

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top