<?php
function uuid($c = 4) {
$x = function($c) {
for ($n = ''; strlen($n) < $c + 1; $n = $n.mt_rand());
return base_convert(substr($n, -$c), 10, 16);
};
return sprintf(
'%x-%04x-%04x-%04x-%04x%04x%04x',
microtime(true) * 10000, $x($c), $x($c), $x($c), $x($c), $x($c), $x($c)
);
}
$time = microtime();
$uuids = array();
for ($i = 0; $i < 100; $i++) {
$uuids[] = uuid();
}
if (count(array_unique($uuids)) != count($uuids)) {
echo 'DUPLICATE';
} else {
echo 'No duplicate';
print_r($uuids);
}
preferences:
33.27 ms | 402 KiB | 5 Q