为什么PHP的uniqid函数只返回13位数,而不是14?
uniqid()函数返回13位数十六进制数.根据
spec in php.net site,该功能使用microtime生成唯一的值.
但是microtime会以字符串格式返回数字,如下所示: "0.70352700 12689396875" 这些基本上是从1970年以来的微秒和秒数. 将十进制数十进制转换为十六进制将导致16位十六进制,而不是13位数. 我也想出了“0”似乎永远不会改变的部分,微秒部分的最后两位数似乎总是“00”.这样做,十进制数将只有9 11-3个数字长,但是当转换成十六进制时仍然是十七进制数,将导致14位十六进制数字不是13. 我不会以另一种方式获得一个独特的身份证,或者长期/短期的独特的身份证号码!我只要知道如果有人知道为什么单向退货只有13个数字. 看起来好像是nosense:如果uniqid返回的数字少于microtime,这意味着microtime会发出更独特的结果,而uniqid返回的结果更加独特.
发现在
http://www.php.net/manual/en/function.uniqid.php#95001
对我有意义评论如果您需要解释
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |