- password_hash: documentation ( source)
- array_unique: documentation ( source)
- array_pop: documentation ( source)
<?php
$str = '';
$hashes = array();
$options = array(
'cost' => 4,
'salt' => '1234567890123456789012',
);
do {
$str .= '0';
$hashes[] = password_hash($str, PASSWORD_BCRYPT, $options);
if (count(array_unique($hashes)) === count($hashes))
$allUnique = true;
else
$allUnique = false;
} while($allUnique);
echo "Stopped at " . strlen($str) . " characters before truncation was detected...\n\n";
$lst = array_pop($hashes);
$stl = array_pop($hashes);
echo "$stl\n$lst";