hash_update

(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)

hash_updateДобавляет данные в активный контекст хеширования

Описание

hash_update(HashContext $context, string $data): true

Список параметров

context

Контекст хеширования, возвращаемый hash_init().

data

Сообщение, которое должно быть включено в хеш.

Возвращаемые значения

Функция возвращает логическое значение true.

Список изменений

Версия Описание
8.4.0 Функция теперь возвращает значение true вместо логического значения (bool).
7.2.0 Принимает HashContext, а не ресурс.

Смотрите также

  • hash_init() - Инициализирует контекст инкрементного хеширования
  • hash_update_file() - Добавляет данные из файла в активный контекст хеширования
  • hash_update_stream() - Добавляет данные из открытого потока в активный контекст хеширования
  • hash_final() - Завершает инкрементальное хеширование и возвращает результат в виде хеш-кода

Добавить

Примечания пользователей 1 note

up
5
Dainichi
19 years ago
A simple example on incremental file hashing:$fp = fopen($file, "r");$ctx = hash_init('sha256');while (!feof($fp)) {    $buffer = fgets($fp, 65536);    hash_update($ctx, $buffer);}$hash = hash_final($ctx, true);fclose($fp);While incremental hashing is quite slow, it's the easiest way to hash - parts of large files: I.e., a 700MB avi video uses first x bytes to store metadata, so in order to hash the avi's data only, you have to fseek to data start and use incremental hashing- streaming data if php just proxies the data- whenever it's inadequate or impossible to store the data being hashed into memory (i.e. because of their size) or on disc.
To Top