# La classe QuickHashIntHash

(PECL quickhash >= Unknown)

## Introduction

Cette classe est un conteneur pour un hash contenant des nombres entiers, alors que les valeurs sont elles aussi des entiers. Les hash sont aussi disponibles au travers de l'interface ArrayAccess.

Les hash peuvent aussi être parcourus via l'interface Iterator. L'ordre dans lequel les éléments ressortent n'est pas garanti.

## Synopsis de la classe

QuickHashIntHash {
/* Constantes */
const integer CHECK_FOR_DUPES = 1 ;
const integer DO_NOT_USE_ZEND_ALLOC = 2 ;
const integer HASHER_NO_HASH = 256 ;
const integer HASHER_JENKINS1 = 512 ;
const integer HASHER_JENKINS2 = 1024 ;
/* Méthodes */
public add ( int `$key` [, int `$value` ] ) : bool
public __construct ( int `$size` [, int `$options` ] )
public delete ( int `$key` ) : bool
public exists ( int `$key` ) : bool
public get ( int `$key` ) : int
public getSize ( void ) : int
public static loadFromFile ( string `$filename` [, int `$options` ] ) : QuickHashIntHash
public static loadFromString ( string `$contents` [, int `$options` ] ) : QuickHashIntHash
public saveToFile ( string `$filename` ) : void
public saveToString ( void ) : string
public set ( int `$key` , int `$value` ) : bool
public update ( int `$key` , int `$value` ) : bool
}

## Constantes pré-définies

`QuickHashIntHash::CHECK_FOR_DUPES`

  Si activé, l'ajout d'éléments déja existants dans l'ensemble (via add() ou loadFromFile()) fera que ces éléments seront supprimés de l'ensemble. Ceci prendra du temps, utilisez uniquement lorsque nécessaire.

`QuickHashIntHash::DO_NOT_USE_ZEND_ALLOC`

  Désactive l'utilisation du gestionnaire de mémoire interne à PHP. Si cette option est activée, les allocations internes ne compteront pas dans le paramètre memory_limit.

`QuickHashIntHash::HASHER_NO_HASH`

  Utilise un modulo et non pas une fonction de hashage pour trouver un élément dans l'index. Ce n'est pas plus rapide que le hashage classique, et le risque de collision est plus élevé.

`QuickHashIntHash::HASHER_JENKINS1`

  Fonction de hashage par défaut qui transforme les hash entiers en éléments indexés en liste.

`QuickHashIntHash::HASHER_JENKINS2`

  Sélectionne un algorithme de hashage différent.

## Sommaire

- QuickHashIntHash::add — Ajoute une nouvelle entrée au hash
- QuickHashIntHash::__construct — Créer un nouvel objet QuickHashIntHash
- QuickHashIntHash::delete — Supprime une entrée du hash
- QuickHashIntHash::exists — Vérifie qu'une clé existe dans le hash
- QuickHashIntHash::get — Récupère la valeur correspondant à une clé dans le hash
- QuickHashIntHash::getSize — Retourne le nombre d'éléments dans le hash
- QuickHashIntHash::loadFromFile — Créer un hash depuis un fichier
- QuickHashIntHash::loadFromString — Créer un hash depuis une chaine
- QuickHashIntHash::saveToFile — Stocke un hash sur le disque
- QuickHashIntHash::saveToString — Retourne une version sérialisée du hash
- QuickHashIntHash::set — Met à jour une entrée dans le hash ou l'ajoute si elle n'existait pas
- QuickHashIntHash::update — Met à jour une entrée dans le hash