Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
PHP: hash_update - Manual
[go: Go Back, main page]

PHP
downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

hash" width="11" height="7"/> <hash_update_stream
Last updated: Fri, 19 Jun 2009

view this page in

hash_update

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

hash_updateアクティブなハッシュコンテキストにデータを投入する

説明

bool hash_update ( resource $context , string $data )

パラメータ

context

hash_init() が返すハッシュコンテキスト。

data

ハッシュダイジェストに含めるメッセージ。

返り値

TRUE を返します。

参考

  • hash_init() - 段階的なハッシュコンテキストを初期化する
  • hash_update_file() - アクティブなハッシュコンテキストに、ファイルから データを投入する
  • hash_update_stream() - アクティブなハッシュコンテキストに、オープンしているストリームから データを投入する
  • hash_final() - 段階的なハッシュ処理を終了し、出来上がったダイジェストを返す



add a note add a note User Contributed Notes
hash_update
Dainichi
25-Jul-2006 01:19
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.

hash" width="11" height="7"/> <hash_update_stream
Last updated: Fri, 19 Jun 2009
 
 
show source | credits | sitemap | contact | advertising | mirror sites