- mt_rand: documentation ( source)
- mt_srand: documentation ( source)
- ord: documentation ( source)
<?php
mt_srand(42);
echo generateKey();
function generateKey() {
return base64encode(randBuffer(48));
}
function base64encode($buf) {
$enc = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";
return $buf;
}
function randBuffer($n) {
//try {
//$buf = openssl_random_pseudo_bytes($n);
//} catch (Exception $e) {
$buf = "";
for ($i = 0; $i < $n; $i++) {
$buf .= ord(mt_rand(0, 255));
}
//}
return $buf;
}