# Класс QuickHashIntHash

(PECL quickhash >= Unknown)

## Введение

Класс-обёртка для хеш-таблицы с ключами и значениями в виде целых чисел. Хеши также доступны как реализация интерфейса ArrayAccess.

Хеши также можно перебирать конструкцией `foreach`, поскольку интерфейс Iterator также реализовали. Порядок, в котором хеш возвращает элементы, не гарантируется.

## Обзор класса

class QuickHashIntHash {
/* Константы */
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;
/* Методы */
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
}

## Предопределённые константы

`QuickHashIntHash::CHECK_FOR_DUPES`
  Если опцию включили, добавление повторяющихся элементов в набор (методом QuickHashIntHash::add() или QuickHashIntHash::loadFromFile()) приведёт к отбрасыванию этих элементов. Это займёт дополнительное время, поэтому опцию включают только при необходимости.
`QuickHashIntHash::DO_NOT_USE_ZEND_ALLOC`
  Запрещает использование встроенного в PHP менеджера памяти для внутренних структур. Если опцию включили, используемая память не будет учитываться настройкой memory_limit.
`QuickHashIntHash::HASHER_NO_HASH`
  Указывает, что не нужно использовать функцию хеширования, а вместо неё, для поиска индекса в цепочке, использовать модуль. Это не быстрее обычного хеширования и порождает больше коллизий.
`QuickHashIntHash::HASHER_JENKINS1`
  Хеширующая функция по умолчанию.
`QuickHashIntHash::HASHER_JENKINS2`
  Другой хеширующий алгоритм.

## Содержание

- QuickHashIntHash::add — Добавляет элемент в хеш
- QuickHashIntHash::__construct — Создаёт объект QuickHashIntHash
- QuickHashIntHash::delete — Удаляет запись из хеша
- QuickHashIntHash::exists — Проверяет, представляет ли собой ключ часть хеша
- QuickHashIntHash::get — Извлекает значение из хеша по ключу
- QuickHashIntHash::getSize — Возвращает количество элементов в хеше
- QuickHashIntHash::loadFromFile — Создаёт хеш из файла
- QuickHashIntHash::loadFromString — Создаёт хеш из строки
- QuickHashIntHash::saveToFile — Сохраняет хеш в памяти на диск
- QuickHashIntHash::saveToString — Возвращает сериализованную версию хеша
- QuickHashIntHash::set — Обновляет запись в хеше новым значением или добавляет новую, если хеш не содержит запись
- QuickHashIntHash::update — Обновляет запись в хеше новым значением

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