# La clase QuickHashIntHash

(PECL quickhash >= Unknown)

## Introducción

Esta clase envuelve un hash que contiene números enteros, donde los valores son también números enteros. Los hashes están disponibles como implementación de la interfaz ArrayAccess.

Los hashes pueden ser iterados con `foreach` ya que la interfaz Iterator está también implementada. El orden en el que los elementos son devueltos no está garantizado.

## Sinopsis de la Clase

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

## Constantes predefinidas

`QuickHashIntHash::CHECK_FOR_DUPES`
  Si está activado, la adición de elementos duplicados a un hash (vía QuickHashIntHash::add() o QuickHashIntHash::loadFromFile()) resultará en la eliminación de estos elementos del hash. Esto tomará más tiempo, por lo que úselo solo si es necesario.
`QuickHashIntHash::DO_NOT_USE_ZEND_ALLOC`
  Desactiva el uso del gestor de memoria interno de PHP para las estructuras de juego internas. Con esta opción activada, las asignaciones internas no contarán en los parámetros memory_limit.
`QuickHashIntHash::HASHER_NO_HASH`
  Selecciona no usar una función de hash, sino simplemente usar un módulo para encontrar el índice de la lista de cubos. Esto no es más rápido que el hash normal, y da más colisiones.
`QuickHashIntHash::HASHER_JENKINS1`
  Esta es la función de hash por defecto para transformar los hashes enteros en índice de lista de cubos.
`QuickHashIntHash::HASHER_JENKINS2`
  Selecciona un algoritmo de hash de variante.

## Tabla de contenidos

- QuickHashIntHash::add — Este método añade una nueva entrada al hash
- QuickHashIntHash::__construct — Crear un nuevo objeto QuickHashIntHash
- QuickHashIntHash::delete — Este método elimina una entrada del hash
- QuickHashIntHash::exists — Este método verifica si una clave forma parte del hash
- QuickHashIntHash::get — Este método recupera un valor del hash por su clave
- QuickHashIntHash::getSize — Devuelve el número de elementos en el hash
- QuickHashIntHash::loadFromFile — Este método de fábrica crea un hash a partir de un fichero
- QuickHashIntHash::loadFromString — Este método de fábrica crea un hash a partir de una string
- QuickHashIntHash::saveToFile — Este método almacena un hash en memoria en disco
- QuickHashIntHash::saveToString — Este método devuelve una versión serializada del hash
- QuickHashIntHash::set — Este método actualiza una entrada en el hash con un nuevo valor, o añade una nueva entrada si la entrada no existe
- QuickHashIntHash::update — Este método actualiza una entrada en el hash con un nuevo valor

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open