Stream is an object oriented library for reading and writing binary streams in PHP.
This library has the following requirements:
- PHP 5.6+
Install Composer in your project:
$ curl -s https://getcomposer.org/installer | phpAdd the package to your composer.json and install it via Composer:
$ php composer.phar require gravitymedia/streamThis is a simple usage example for character streams but is applicable for binary data streams.
require 'vendor/autoload.php';
use GravityMedia\Stream\Stream;
// create resource
$resource = fopen('php://temp', 'r+');
// create new stream object
$stream = Stream::fromResource($resource);
// write some data
$stream->write("\x63\x6f\x6e\x74\x65\x6e\x74\x73");
// seek a position
$stream->seek(4);
// print 32 bit unsigned integer
print $stream->readUInt32() . PHP_EOL;
// rewind stream
$stream->rewind();
// print the data previously written
while (!$stream->eof()) {
print $stream->read(1);
}
print PHP_EOL;
// print position
print $stream->tell() . PHP_EOL;
// rewind stream
$stream->rewind();
// truncate random data
$stream->truncate(7);
// print the truncated data
while (!$stream->eof()) {
print $stream->read(1);
}
print PHP_EOL;Clone this repository, install Composer and all dependencies:
$ php composer.phar installRun the test suite:
$ php vendor/bin/phing testClone this repository, install Composer and all dependencies:
$ php composer.phar installGenerate the documentation to the build/docs directory:
$ php vendor/bin/phing docPlease see CONTRIBUTING for details.
The MIT License (MIT). Please see License File for more information.