1. Go to this page and download the library: Download jstewmc/chunker 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/ */
jstewmc / chunker example snippets
// Create an example file with multi-byte characters (characters in the string
// "from $ to " are one-byte in UTF-8, while the euro symbol, "€", is a three-
// byte character in UTF-8)
file_put_contents('example.txt', 'from $ to €');
// Read 12 bytes of the file.
$length = 12;
echo file_get_contents('example.txt', false, null, 0, $length);
use Jstewmc\Chunker\Text;
// Instantiate a new text chunker with UTF-8 encoding and a chunk size of four
// bytes (these constructor arguments are covered in more detail below).
$chunker = new Text('from $ to €', 'UTF-8', 4);
// Loop through the file's chunks, echo the chunk, and advance to the next one.
while (false !== ($chunk = $chunker->current())) {
echo "'$chunk'";
$chunker->next();
}
use Jstewmc\Chunker\File;
$chunker = new File('path/to/file.ext');
use Jstewmc\Chunker\Text;
$chunker = new Chunker\Text('foo bar baz');
use Jstewmc\Chunker\Text;
$chunker = new Text('foo', 'UTF-8');
use Jstewmc\Chunker\Text;
$chunker = new Text('foo');
use Jstewmc\Chunker\{File, Text};
// Use chunks of 8,192 bytes.
$chunker1 = new File('/path/to/file.ext', null, 8192);
// Use chunks of 2,000 characters.
$chunker2 = new Text('foo bar baz', null, 2000);
use Jstewmc\Chunker\Text;
$chunker = new Text('foo');
$chunker->getCurrentChunk();
// returns "foo" (the first chunk is immediately available upon instantiation)
$chunker->getNextChunk();
// returns false (advances the internal pointer and returns next chunk)
$chunker->getPreviousChunk();
// returns "foo" (rewinds the internal pointer and returns previous chunk)
$chunker->getCurrentChunk();
// returns "foo"
$chunker->getCurrentChunk();
// returns "foo" (because the internal pointer hasn't moved)
while (false !== ($chunk = $chunker->current())) {
//
// do something with the $chunk...
//
// advance the pointer for the next iteration
$chunker->next();
}
use Jstewmc\Chunker\Text;
$chunker = new Text('foo bar baz', null, 3);
$chunker->countChunks(); // returns 4 (the count is always rounded up)
use Jstewmc\Chunker\Text;
$chunker1 = new Text('foo', null, 3);
$chunker1->hasChunk(); // returns true
$chunker1->hasChunks(); // returns true
$chunker2 = new Text('foo bar', null, 3);
$chunker->hasChunk(); // returns false (there are three, three-char chunks)
$chunker->hasChunks(); // returns true
use Jstewmc\Chunker\Text;
$chunker = new Text('foo bar', null, 3);
$chunker->countChunks(); // returns 3 (there are three, three-character chunks)
$chunker->hasPreviousChunk(); // returns false (the pointer is at zero)
$chunker->hasNextChunk(); // returns true
$chunker->next(); // advance to the next chunk
$chunker->hasPreviousChunk(); // returns true
$chunker->hasNextChunk(); // returns true
$chunker->next();
$chunker->hasPreviousChunk(); // returns true
$chunker->hasNextChunk(); // returns false (the pointer it at the end)