如何在PHP中生成随机的64位值作为十进制字符串 [英] How to generate random 64-bit value as decimal string in PHP

查看:310
本文介绍了如何在PHP中生成随机的64位值作为十进制字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Oauth需要一个随机的64位无符号数字,以十进制格式编码为ASCII字符串.你们可以用php帮助我实现这一目标吗? 谢谢

Oauth requires a random 64-bit, unsigned number encoded as an ASCII string in decimal format. Can you guys help me achieve this with php? Thanks

推荐答案

您可以使用两个32位数字,四个16位数字,等等.

You could use two 32-bit numbers, four 16-bit numbers, etc.

PHP具有 rand() getrandmax() mt_getrandmax().)

PHP has rand() and and mt_rand() but how many random bits they supply isn't specified by the standard (though they can be queried with the help of getrandmax() and mt_getrandmax(), respectively.)

因此,您最最安全的最简单下注将是生成64个随机位,并将它们一一设置.

So your safest simplest bet would be generating 64 random bits and setting them one by one.

对于使用64位整数,我建议使用 GMP 库,因为它具有多种功能来帮助您.

As for working with 64-bit integers, I'd recommend using the GMP library as it has a good range of functions to help you out.

您可以创建一个电话号码,拨打64 gmp_setbit() s上的连续位置,然后使用gmp_strval()将其转换为字符串.

You could create a number, call 64 gmp_setbit()s on it with successive positions then convert it to a string using gmp_strval().

这篇关于如何在PHP中生成随机的64位值作为十进制字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆