当前位置:首页 » 编程语言 » php产生随机数

php产生随机数

发布时间: 2022-11-23 01:11:12

php中如何生成1-15之间的随机数

可以使用PHP math 函数 rand(1,15)直接返回即可。

定义和用法:rand() 函数返回随机整数。

语法:rand(min,max)。

参数:min,max可选。规定随机数产生的范围。

说明:如果没有提供可选参数 min 和 max,rand() 返回 0 到 RAND_MAX 之间的伪随机整数。例如,想要 5 到 15(包括 5 和 15)之间的随机数,用 rand(5, 15)。

(1)php产生随机数扩展阅读:

提示和注释

注释:在某些平台下(例如 Windows)RAND_MAX 只有 32768。如果需要的范围大于 32768,那么指定 min 和 max 参数就可以生成大于 RAND_MAX 的数了,或者考虑用 mt_rand() 来替代它。

注释:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现在已自动完成。

注释:在 3.0.7 之前的版本中,max 的含义是 range 。要在这些版本中得到和上例相同 5 到 15 的随机数,简短的例子是 rand (5, 11)。

② php生成不重复随机数、数组的4种方法分享

下面写几种生成不重复随机数的方法,直接上代码吧
复制代码
代码如下:
<?php
define('RANDOM_MAX',
100);
define('COUNT',
10);
echo
'max
random
num:
'.RANDOM_MAX,
'
;result
count:'.COUNT,
'<br/>';
invoke_entry('rand1');
invoke_entry('rand2');
invoke_entry('rand3');
invoke_entry('rand4');
function
invoke_entry($func_name)
{
$time
=
new
time();
$time->time_start();
call_user_func($func_name);
echo
$func_name.'
time
spend:
',
$time->time_spend();
echo
'<br/>';
}
function
rand1()
{
$numbers
=
range
(1,
RANDOM_MAX);
shuffle($numbers); //随机打乱数组
$result
=
array_slice($numbers,
1,
COUNT);
return
$result;
}
function
rand2()
{
$result
=
array();
while(count($result)<
COUNT)
{
$result[]
=
mt_rand(1,
RANDOM_MAX); //mt_rand()是比rand()更好更快的随机函数
$result
=
array_unique($result);
//删除数组中重复的元素
}
return
$result;
}
function
rand3()
{
$result
=
array();
while(count($result)
<
COUNT)
{
$_tmp
=
mt_rand(1,
RANDOM_MAX);
if(!in_array($_tmp,
$result))
{ //当数组中不存在相同的元素时,才允许插入
$result[]
=
$_tmp;
}
}
return
$result;
}
function
rand4()
{
$result
=
array();
while
(count($result)
<
COUNT)
{
$result[]
=
mt_rand(1,
RANDOM_MAX);
$result
=
array_flip(array_flip($result)); //array_flip将数组的key和value交换
}
return
$result;
}
class
time
{
private
$_start;

public
function
time_start()
{
$this->_start
=
$this->microtime_float();
}
public
function
time_spend()
{
return
$this->microtime_float()
-
$this->_start;
}
private
function
microtime_float()
{
list($usec,
$sec)
=
explode("
",
microtime());
return
((float)$usec
+
(float)$sec);
}
}
?>

③ php生成随机数

<?php
$number = '';//初始化一个幸运数数

$num = rand(1,100); //得到一个1-100的随机数
if($num >=1 and $num<=20){
$number = 1; //如果随机数在1-20 那么这个幸运数就为1 ,也就是说幸运数1的概率为20%

}else if($num >=21 and $num <=41 ){
$number = 2; //如果随机数在21-41 那么这个幸运数就为2 ,也就是说幸运数2的概率为21%
}else if..... //依次类推

我这里的1-20 21-41 这个区间是乱写的 你可以打乱 意思就是说从1-100中间得到一个随机数

再给这个随机数添加一个概率 如果说这个随机数是在1-20直接的任意一个那么幸运数就为1,也就是说出现1的概率为20%

④ php随机数生成的函数是

php提供的随机数函数rand(),rand()函数将返回随机整数,具体使用方法如下:rand(min,max)
可选参数min和max可以使rand() 返回0到rand_max之间的伪随机整数,例如,想要5到15(包括 5 和 15)之间的随机数,用 rand(5, 15)

⑤ PHP随机数中的多少执行A,其它执行B该如何写函数呢

你是16进制数,用rand()或mt_rand()分段生成再拼起来。

随机字符串生成法:
function randomkeys($length)
{
$output='';
for ($a = 0; $a < $length; $a++) {
$output .= chr(mt_rand(33, 126)); //生成php随机数
}
return $output;
}
echo randomkeys(8);

其中,mt_rand()生成一个介于33到126之间的php随机数,然后用chr()函数转化成字符。

⑥ php生成随机数字,范围1-100,每次生成一个数字,可以重复

echomt_rand(1,100);

请使用rand函数

intrand(int$min,int$max)

使用循环生成,假如想生成512个数字,就可以像这样:

$num = 1;//初始化一个变量为1

for($i = 1; $i <= 512; $i++)//这个是看你要生成多少个数字,然后循环生成

{

if($num >= 100)

$num = 1;//若变量的数字大于一百,则返回变成1

echo $num."</br>";//输出变量数字,即生成的数字,后面的</br>是换行

$num++;//然后将变量加1,即在前面生成的数字基础上加一

}

(6)php产生随机数扩展阅读:

密码学安全伪随机性。其定义为,给定随机样本的一部分和随机算法,不能有效的演算出随机样本的剩余部分。

真随机性。其定义为随机样本不可重现。实际上只要给定边界条件,真随机数并不存在,可是如果产生一个真随机数样本的边界条件十分复杂且难以捕捉(比如计算机当地的本底辐射波动值),可以认为用这个方法演算出来了真随机数。

热点内容
直链云存储 发布:2025-01-16 13:19:30 浏览:726
电脑主机服务器多少钱 发布:2025-01-16 13:00:28 浏览:665
linuxoracle操作 发布:2025-01-16 12:40:50 浏览:47
河北存储服务价格 发布:2025-01-16 12:39:21 浏览:347
挂机服务器的搭建 发布:2025-01-16 12:34:07 浏览:417
安卓怎么删除信任凭证 发布:2025-01-16 12:22:06 浏览:338
代理编译 发布:2025-01-16 12:07:59 浏览:794
服务器为什么老是无响应 发布:2025-01-16 12:07:59 浏览:894
安卓怎么传软件到苹果 发布:2025-01-16 12:01:28 浏览:955
pythonforzip 发布:2025-01-16 11:59:46 浏览:912