PHP中的几个随机数生成函数

  1. rand() 基于 libc 的随机种子发生器
  2. mt_rand() 基于 Mersenne Twister 算法返回随机整数。它可以产生随机数值的平均速度比 libc 提供的 rand() 快四倍。
  3. random_int() 生成密码安全的伪随机整数
  4. random_bytes() 生成密码安全的伪随机字符串
  5. openssl_random_pseudo_bytes() 生成密码安全的伪随机字符串

3,4是在php7中引入的两个CSPRNG函数,它可以生成更加可靠,随机性更高的随机数种子

-

在计算机中随机数的来源因环境不同会产生差异

  • 在 Windows 系统,会使用 CryptGenRandom() 函数。
  • 在其他平台,会优先使用 arc4random_buf() 函数(限 BSD 衍生系统或带 libbsd 的系统)。
  • 若以上两点均不符合,会使用 Linux getrandom(2) 系统调用。
  • 若以上来源均不符合,会抛出 Error。

原文地址:https://segmentfault.com/a/1190000016088261

PHP中的几个随机数生成函数的更多相关文章

  1. 使用C++生成1-33中的6个随机数,无重复

    生成1-33中的6个随机数,无重复 ------------------------------------------------------------------------   方法1.每生成 ...

  2. JAVA中生成指定位数随机数的方法总结

    JAVA中生成指定位数随机数的方法很多,下面列举几种比较常用的方法. 方法一.通过Math类 public static String getRandom1(int len) { int rs = ( ...

  3. Python中random模块生成随机数详解

    Python中random模块生成随机数详解 本文给大家汇总了一下在Python中random模块中最常用的生成随机数的方法,有需要的小伙伴可以参考下 Python中的random模块用于生成随机数. ...

  4. iOS——浅谈iOS中三种生成随机数方法

    ios 有如下三种随机数方法:

  5. 用python在excel中读取与生成随机数写入excel中

    今天是我第一次发博客,就关于python在excel中的应用作为我的第一篇吧. 具体要求是:在一份已知的excel表格中读取学生的学号与姓名,再将这些数据放到新的excel表中的第一列与第二列,最后再 ...

  6. PHP中生产不重复随机数的方法

    PHP内置函数不重复随机数        需求:要生成一个数组,这个数组里面有10个元素,都是整形,并且是1-60之间不重复的随机数.  代码: 代码示例: 1 2 3 4 5 6 7 8 9 10 ...

  7. iOS-浅谈iOS中三种生成随机数方法

    ios 有如下三种随机数方法:

  8. c++<cstdlib>文件中的函数产生随机数

    C++中没有自带的random函数,要生成随机数就需要用c文件"stdlib.h"里的函数rand()和srand(),不过,由于rand()的内部实现是用线性同余法做的, 所以生 ...

  9. r语言之生成随机序列,随机数生成函数及用法

    (1)生成正态分布随机数: rnorm(n,mean,sd)     其中,n表示生成的随机数个数,mean表示正态分布均值,sd表示正态分布标准差 > rnorm(5,0,2)[1] -5.3 ...

随机推荐

  1. 配置远程连接mysql数据库 Connect to remote mysql database

    设有本地机器(local machine), ip地址为localip 远程机器(remote machine), ip地址remoteip 要通过在local machine的终端连接remote ...

  2. ConfigurationManager.AppSettings Property

    在app.config文件中添加如下配置 <appSettings> <add key="Server" value="127.0.0.1"/ ...

  3. php获得文件的属性

    PHP获取文件属性可以用到多种函数,来实现我们对文件各种不同信息的获取需求.在这里我们就简单的介绍了这些获取方式的实现方法. 详细解读PHP获取远程图片技巧 详细介绍PHP读取目录函数 如何运用相关函 ...

  4. 9.11NOIP模拟题

    NOIP模拟赛 by thmyl   题目名称 superman market Lemon_Soda 可执行文件名 superman market Lemon_Soda 输入文件 superman.i ...

  5. P2251 质量检测(ST表)

    P2251 质量检测 题目描述 为了检测生产流水线上总共N件产品的质量,我们首先给每一件产品打一个分数A表示其品质,然后统计前M件产品中质量最差的产品的分值Q[m] = min{A1, A2, ... ...

  6. 推荐给Web前端开发人员的一些书籍(从基础到架构阶段)

    有很多人问我说作为一个前端开发人员都需要看一些什么书籍,尤其是刚入门的新手,今天我整理了一下推荐给大家,大佬绕过. HTML+CSS+JavaScript 网页设计 从入门到精通 作为一个前端新手,强 ...

  7. cobbler+kickstart安装笔记

    cobbler+kickstart安装笔记 本文参考老男孩配置:https://blog.oldboyedu.com/autoinstall-cobbler/ centos7:开机如果不启动网卡,需要 ...

  8. ACM_Power Mouth

    Power Mouth Time Limit: 2000/1000ms (Java/Others) Problem Description: Your task is to calculate the ...

  9. Quartz在服务异常中断或者重启后,不执行之前漏掉的任务,重新运行下一次任务

    Quartz默认重启后会执行之前的任务,所以如果不想执行之前漏掉的任务,需要设置一下两个地方: CRON triggers CronTrigger trigger = TriggerBuilder.n ...

  10. IOS开发之Swift学习笔记

    1.因为存储属性要求初始化,我们可以使用lazy修饰符来延迟初始化.