Slide 22
Slide 22 text
Example code #2
!22
declare(strict_types=1);
chdir(__DIR__);
const MAX_ITERATIONS = 50;
const KEYSPACE = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
function generateRandomString(int $length, $fileHandler): string
{
$pieces = [];
$max = mb_strlen(KEYSPACE, '8bit') - 1;
for ($i = 0; $i < $length; ++$i) {
$pieces[] = KEYSPACE[random_int(0, $max)];
}
fwrite($fileHandler, implode('', $pieces) . PHP_EOL);
return implode('', $pieces);
}
$fileHandler = fopen('output.txt', 'ab+');
for ($i = 0; $i < MAX_ITERATIONS; $i++) {
$generatedString = generateRandomString(random_int(12, 200), $fileHandler);
printf('String #%3d is %d bytes long' . PHP_EOL, $i,
strlen($generatedString));
}
fclose($fileHandler);
unlink('output.txt');