首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何编写自己的mt_rand() & mt_srand?

如何编写自己的mt_rand() & mt_srand?
EN

Stack Overflow用户
提问于 2014-02-27 15:39:30
回答 1查看 226关注 0票数 1

我有一个大量使用mt_rand & mt_srand的应用程序,问题是许多主机提供程序默认启用suhosin.mt_srand.ignore,这会导致应用程序不能正常工作,因为种子不能工作……

由于我的应用程序已经在某些主机服务器上运行(不启用此扩展),所以我希望在php中创建自己的mt_rand & mt_srand函数,并让它们返回与内置函数相同的结果(对于相同的种子),这样我就不会依赖主机提供程序是否启用了这个扩展。

我看过rand.c (4/ext/standard/rand.c),这是mt_rand() & mt_srand()的源代码,但是我对C的了解很低,我无法自己将它迁移到php。

有人知道怎么做吗?还是想帮我个忙?

EN

回答 1

Stack Overflow用户

发布于 2015-06-17 09:10:05

您可以尝试只使用PHP的通用PRNG算法的实现,例如https://github.com/ruafozy/php-mersenne-twister

然而,请不要依赖这些数字是密码安全-意思是使用这些,例如,在游戏中产生一个随机迷宫,而不是加密你的日记。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22073246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档