php中mt_rand()随机数函数用法
本文实例讲述了php中mt_rand()随机数函数用法。分享给大家供大家参考。具体分析如下:
mt_rand() 使用 mersenne twister 算法返回随机整数.
语法:mt_rand(min,max)
说明:如果没有提供可选参数 min 和 max,mt_rand() 返回 0 到 rand_max 之间的伪随机数,例如想要 5 到 15(包括 5 和 15)之间的随机数,用 mt_rand(5,15).
在 3.0.7 之前的版本中,max 的含义是 range,要在这些版本中得到和上例相同 5 到 15 的随机数,简短的例子是 mt_rand (5, 11).
PHP实例代码如下:
$rand = mt_rand(0,1);
if( $rand==0 )
{
$array = array(41,20,26,29,30);
}
elseif( $rand==1 )
{
$array = array(38,42,37,400,444);
}
foreach( $array as $v => $vv )
{
echo "$vvn";
}
希望本文所述对大家的PHP程序设计有所帮助。
相关推荐
-
深入理解PHP中mt_rand()随机数的安全
前言 在前段时间挖了不少跟mt_rand()相关的安全漏洞,基本上都是错误理解随机数用法导致的.这里又要提一下php官网manual的一个坑,看下关于mt_rand()的介绍:中文版^cn 英文版^en,可以看到英文版多了一块黄色的 Caution 警告 This function does not generate cryptographically secure values, and should not be used for cryptographic purposes. If you
-
PHP中函数rand和mt_rand的区别比较
PHP函数rand和mt_rand mt_rand() 比rand() 快四倍 很多老的 libc 的随机数发生器具有一些不确定和未知的特性而且很慢.PHP 的 rand() 函数默认使用 libc 随机数发生器.mt_rand() 函数是非正式用来替换它的.该函数用了 Mersenne Twister 中已知的特性作为随机数发生器,mt_rand() 可以产生随机数值的平均速度比 libc 提供的 rand() 快四倍. mt_rand() 比rand() 快四倍 mt_rand - 生成更好
-
php中随机函数mt_rand()与rand()性能对比分析
本文实例对比分析了php中随机函数mt_rand()与rand()性能问题.分享给大家供大家参考.具体分析如下: 在php中mt_rand()和rand()函数都是可以随机生成一个纯数字的,他们都是需要我们设置好种子数据然后生成,那么mt_rand()和rand()那个性能会好一些呢,下面我们带着疑问来测试一下. 例子1. mt_rand() 范例,代码如下: 复制代码 代码如下: <?php echo mt_rand() . "n"; echo mt_rand() . &quo
-
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
因工作需要使用php生成0~1随机小数,之前写过一篇<php生成0~1随机小数方法>,基于mt_rand()及mt_getrandmax()实现. 后来有网友评论,php原生方法lcg_value()可实现0~1随机小数生成. lcg_value说明 float lcg_value ( void ) lcg_value() 返回范围为 (0, 1) 的一个伪随机数.本函数组合了周期为 2^31 - 85 和 2^31 - 249 的两个同余发生器.本函数的周期等于这两个素数的乘积. 返回:范围
-
php中mt_rand()随机数函数用法
本文实例讲述了php中mt_rand()随机数函数用法.分享给大家供大家参考.具体分析如下: mt_rand() 使用 mersenne twister 算法返回随机整数. 语法:mt_rand(min,max) 说明:如果没有提供可选参数 min 和 max,mt_rand() 返回 0 到 rand_max 之间的伪随机数,例如想要 5 到 15(包括 5 和 15)之间的随机数,用 mt_rand(5,15). 在 3.0.7 之前的版本中,max 的含义是 range,要在这些版本中得到
-
golang中strconv.ParseInt函数用法示例
本文实例讲述了golang中strconv.ParseInt函数用法.分享给大家供大家参考,具体如下: golang strconv.ParseInt 是将字符串转换为数字的函数,功能灰常之强大. 参数1 数字的字符串形式 参数2 数字字符串的进制 比如二进制 八进制 十进制 十六进制 参数3 返回结果的bit大小 也就是int8 int16 int32 int64 func ParseInt(s string, base int, bitSize int) (i int64, err erro
-
C#多线程之Thread中Thread.Join()函数用法分析
本文实例讲述了C#多线程之Thread中Thread.Join()函数用法.分享给大家供大家参考.具体分析如下: Thread.Join()在MSDN中的解释:Blocks the calling thread until a thread terminates 当NewThread调用Join方法的时候,MainThread就被停止执行, 直到NewThread线程执行完毕. Thread oThread = new Thread(new ThreadStart(oAlpha.Beta));
-
关于numpy中np.nonzero()函数用法的详解
np.nonzero函数是numpy中用于得到数组array中非零元素的位置(数组索引)的函数.一般来说,通过help(np.nonzero)能够查看到该函数的解析与例程.但是,由于例程为英文缩写,阅读起来还是很费劲,因此,本文将其英文解释翻译成中文,便于理解. 解释 nonzero(a) 返回数组a中非零元素的索引值数组. (1)只有a中非零元素才会有索引值,那些零值元素没有索引值: (2)返回的索引值数组是一个2维tuple数组,该tuple数组中包含一维的array数组.其中,一维arra
-
C#中异步回调函数用法实例
本文实例讲述了C#中异步回调函数用法.分享给大家供大家参考.具体如下: static void Main(string[] args) { Func<string,string> showMessage = ShowMessage; //设置了回调函数Completed,不能有返回值 IAsyncResult result = showMessage.BeginInvoke("测试异步委托",new AsyncCallback(Completed),null); //半段异
-
vc中SendMessage自定义消息函数用法实例
本文实例讲述了vc中SendMessage自定义消息函数用法,分享给大家供大家参考.具体如下: SendMessage的基本结构如下: 复制代码 代码如下: SendMessage( HWND hWnd, //消息传递的目标窗口或线程的句柄. UINT Msg, //消息类别(这里可以是一些系统消息,也可以是自己定义,下文具体介绍,) WPARAM wParam, //参数1 (WPARAM 其实是与UINT是同种类型的, //在vc编译器中右键有个"转到WPARA
-
详解python中的index函数用法
1.函数的创建 def fun(): #定义 print('hellow') #函数的执行代码 retrun 1 #返回值 fun() #执行函数 2.函数的参数 普通参数 :要按照顺序输入参数 def fun(a,b,c): print(a) print(b) print(c) return a fun(11,22,33) #输出:11 #输出:22 #输出:33 指定参数:输入参数时可以不按照顺序输入 def fun(a,b,c): print(a) print(b) print(c) re
-
基于numpy中的expand_dims函数用法
常见的一种应用场景: 条件:假设A的shape为[4, 2],B的shape为[5, 2] 目的:实现A中的每一行, 减去B中的所有行(broadcast操作). 实现: A1 = np.expand_dims(A, -2) => A1的shape变为[4, 1, 2] B1 = np.expand_dims(B, 0) => B1的shape变为[1, 5, 2] A1 - B1 其他示例: wh = np.random.randint(1,3, size=(4,2)) np.expand_
-
python 的numpy库中的mean()函数用法介绍
1. mean() 函数定义: numpy.mean(a, axis=None, dtype=None, out=None, keepdims=<class numpy._globals._NoValue at 0x40b6a26c>)[source] Compute the arithmetic mean along the specified axis. Returns the average of the array elements. The average is taken over
-
pandas dataframe 中的explode函数用法详解
在使用 pandas 进行数据分析的过程中,我们常常会遇到将一行数据展开成多行的需求,多么希望能有一个类似于 hive sql 中的 explode 函数. 这个函数如下: Code # !/usr/bin/env python # -*- coding:utf-8 -*- # create on 18/4/13 import pandas as pd def dataframe_explode(dataframe, fieldname): temp_fieldname = fieldname
随机推荐
- Docker-Compose的使用示例详解
- Sql Server数据库各版本功能对比
- 详解 Nginx代理功能与负载均衡
- Java中Spring使用Quartz任务调度定时器
- asp.net页面状态管理cookie和服务器状态管理Session
- Android 如何获取手机总内存和可用内存等信息
- 详解利用nginx和docker实现一个简易的负载均衡
- Shell实现文本去重并操持原有顺序
- $.ajax()方法参数详解
- Java与Http协议的详细介绍
- log4j详细的常用配置说明介绍
- 详解MySQL中SlowLog的配置方法(图文)
- 使用window.prompt()实现弹出用户输入的对话框
- Egret引擎开发指南之编译项目
- JavaScript数组去重的3种方法和代码实例
- 微信小程序开发之麦克风动画 帧动画 放大 淡出
- 通过bootstrap全面学习less
- [资料]总结几个产生上万流量的方法
- Python实现的异步代理爬虫及代理池
- 解析C#设计模式编程中的装饰者模式