bantu/stream-filter-hash

Stream filter piping data through a hash function.

dev-master 2015-03-05 19:22 UTC

This package is not auto-updated.

Last update: 2024-12-17 03:30:27 UTC


README

Travis Build Status Scrutinizer Build Status Code Coverage Scrutinizer Code Quality

Installation

Through composer:

$ composer require bantu/stream-filter-hash

Usage

Use HashFilter::appendToWriteStream($stream, $params) to calculate a checksum of everything written to $stream. The $params argument has to be an array specifying the hash algorithm to use via the algo array key (e.g. md5 or sha256). Furthermore $params either needs to be passed a callback via the callback array key or an output stream using the stream array key.

Example using Stream

Create an output.txt.sha256 file containing a checksum of everything you write to output.txt.

require 'vendor/autoload.php';
$dest = fopen('output.txt', 'w+b');
$hash = fopen('output.txt.md5', 'w+b');
\bantu\StreamFilter\Hash\HashFilter::appendToWriteStream($dest, array(
    'algo' => 'sha256', 'stream' => $hash,
));
fwrite($dest, 'The quick brown fox jumps over the lazy dog');
fclose($dest);
fclose($hash);