1. Go to this page and download the library: Download wapmorgan/binary-stream library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
wapmorgan / binary-stream example snippets
use wapmorgan\BinaryStream\BinaryStream;
$stream = new BinaryStream('filename.ext');
$text = $s->readString(20);
use wapmorgan\BinaryStream\BinaryStream;
$stream = new BinaryStream('filename.ext');
$int = $stream->readInteger(32);
$float = $stream->readFloat(32);
$flags = $stream->readBits([
'additional_data' => 1,
'_' => 5, // pointless data
'data_type' => 2,
]);
if ($flags['additional_data']) {
if ($flags['data_type'] == 0b00)
$char = $stream->readChar();
else if ($flags['data_type'] == 0b01)
$string = $stream->readString(10);
else if ($flags['data_type'] == 0b10)
$time = date('r', $stream->readInteger(64));
}
use wapmorgan\BinaryStream\BinaryStream;
$stream = new BinaryStream('filename.ext');
$data = $stream->readGroup([
'i:int' => 32,
'f:float' => 32,
'additional_data' => 1,
'_' => 5,
'data_type' => 2,
]);
if ($data['additional_data']) {
if ($data['data_type'] == 0b00)
$data['char'] = $stream->readChar();
else if ($data['data_type'] == 0b01)
$data['string'] = $stream->readString(10);
else if ($data['data_type'] == 0b10)
$data['time'] = date('r', $stream->readInteger(64));
}
use wapmorgan\BinaryStream\BinaryStream;
$stream = new BinaryStream('filename.ext');
$stream->saveGroup('Data', [
'i:int' => 32,
'f:float' => 32,
'additional_data' => 1,
'_' => 5,
'data_type' => 2,
]);
do {
$data = $stream->readGroup('Data');
// Some operations with data
} while ($data['data_type'] != 0b11);
use wapmorgan\BinaryStream\BinaryStream;
$stream = new BinaryStream('filename.ext');
if ($stream->compare(3, 'ASC')) {
// parse here new format
} else {
$stream->saveGroup('DataOld', [
'i:int' => 32,
'f:float' => 32,
'additional_data' => 1,
'_' => 5,
'data_type' => 2,
]);
do {
$data = $stream->readGroup('DataOld');
// Some operations with data
} while ($data['data_type'] != 0b11);
}