「実装によってはUUID4が重複しうる」って話を聞いて「じゃぁ駄目な実装を書いてみよう」と思いました(笑
珍しく「徹頭徹尾、非実用」です(笑
<?php mt_srand(time()); printf("%08x-%04x-4%03x-%04x-%012x\n" , mt_rand(0, 0xffffffff) , mt_rand(0, 0xffff) , mt_rand(0, 0xfff) , mt_rand(0, 0x3fff) + 0x8000 , mt_rand(0, 0xffffffffffff) );
これだと、同じ秒で(別マシンだろうがなんだろうが)同タイミングで作成すると、ちゃんと(?)重複します(笑
いやまぁ「普通に考えて、最低限 random_bytes() だろ」とか思うのですが、そこはほら、実験という名のお遊びなのでwww
なお
mt_srand(time());
がキモになりますので、絶対に省略しないでください。省略されると、ちゃんと(?)重複しません(笑
うんなんか書いたら満足したwww