Moin!
ergibt: 4314398832739891950041055679321289
Und jetzt erzähle ich, warum das nicht stimmt:
echo "<?php echo uniqid(); ?>" | php | wc -c
Ergebnis: nur 13!
Ein Blick auf die Ausgabe sagt: Hexadezimal. Taschenrechner:
echo "15^13/10000" | bc
Ergebnis: 194619506835
Also nur: 1/194.619.506.835
Das ist nicht so sehr brauchbar. Im Lotto wird nämlich auch dauernd gewonnen.
Mithin macht es keinen Sinn die Ausgaben von uniqid() dirch md5 zu jagen. Wenn überhaupt, dann: md5( uniqid() . uniqid() . uniqid() )
Aber auch das wäre dumm, denn dann machst Du aus einer hexadezimalen Zahl mit 39 Stellen eine mit 32 Stellen, schränkst die Volatilität also ein.
Jörg Reinholz