Java代
関数 create_guid()
{
$microTime = microtime();
list($a_dec, $a_sec) =explode(" ", $microTime);
$dec_hex = dechex($a_dec* 1000000);
$sec_hex = dechex($a_sec);
ensure_length($dec_hex, 5);
ensure_length($sec_hex, 6);
$guid = "";
$guid .= $dec_hex;
$guid .= create_guid_section(3);
$guid .= '-';
$guid .= create_guid_section(4);
$guid .= '-';
$guid .= create_guid_section(4);
$guid .= '-';
$guid .= create_guid_section(4);
$guid .= '-';
$guid .= $sec_hex;
$guid .= create_guid_section(6);
$guid を返します。
}
関数 create_guid_section($characters)
{
$return = "";
for($i=0; $i
{
$return .= dechex(mt_rand(0,15));
}
$return を返す;
}
関数 ensure_length(&$string, $length)
{
$strlen = strlen($string);
if($strlen
{
$string = str_pad($string,$length,"0");
}
else if($strlen > $length)
{
$string = substr($string, 0, $length);
}
}