php 生成一个随机数(0.11~999.99),判断是不是是所有数字相同 , 例如出现1.11 或者11.1,111.1,111.11 这种

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 生成一个随机数(0.11~999.99),判断是不是是所有数字相同 , 例如出现1.11 或者11.1,111.1,111.11 这种相关的知识,希望对你有一定的参考价值。

php 生成一个随机数(0.11~999.99),判断是否是所有数字相同 , 例如出现1.11 或者11.1,111.1,111.11 这种情况

参考技术A

    思路:用rand函数取11到99999的随机数,然后除以100四舍五入保留2为小数,最终结果在0.11~999.99区间

    取到的值除以0.11判断结果是不是为整数,如果是整数,说明值是1.1、2.22这种类型的,符合

追问

999.99 除以0.11 除不尽吧?

追答

我去,好像是,那就换另一种处理

    去除小数点,当成一个新数,获取长度:如99.9变成999,长度 3

    然后截取第一位,如9;然后对应乘以长度对应的1,如长度3,则乘以111(3个1)

    乘后的值和新值比较,如9*111=新值999,则这个值符合,记得是原值

参考技术B $rnd_num = rand_num();
var_dump(chk_num($rnd_num));

//生成一个小数点后2位的浮点随机数
function rand_num()

return mt_rand(11,99999)/100;



//判断是否连号
function chk_num($num)
$str_num = str_replace(".","",$num); //去小数点
for($i=1,$max=strlen($str_num);$i<$max;$i++)
if(substr($str_num,$i-1,1)<>substr($str_num,$i,1))
return false;


return true;
本回答被提问者采纳

PHP生成随机字符串

原理:

  定义一个字符串,里面存放你想要的字符,这里是大小写字母以及数字

      利用php自带的rand()方法生成随机数,根据结果字符串的长度,来调用几次rand()函数,

  每次随机生成的数字就是字符串的下标,最后将所有字符组成新的字符串返回

 1 <?php
 2 
 3   /**
 4   ** $length : the length of the result String
 5   **/
 6   function getRandChar($length){
 7      $str = null;
 8      $strPol = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";//大小写字母以及数字
 9      $max = strlen($strPol)-1;
10      
11      for($i=0;$i<$length;$i++){
12         $str.=$strPol[rand(0,$max)];
13      }
14      return $str;
15   }
16  
17   echo getRandChar(10);
18 ?>
View Code

 

以上是关于php 生成一个随机数(0.11~999.99),判断是不是是所有数字相同 , 例如出现1.11 或者11.1,111.1,111.11 这种的主要内容,如果未能解决你的问题,请参考以下文章

求一个生成四位随机数的PHP代码

PHP——生成随机数和日期时间

php利用时间生成随机函数

php生成随机密码(php自定义函数)转自先锋教程网

最详细win7下手动搭建PHP环境:apache2.4.23+php7.0.11

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