<?php
class ClassName
{
/**
* //php通过0-9随机生成唯一的8位数
**/
function nonceStr() {
$arr = []; //定义一个空数组
for ($i=0; $i < 100; $i++) { //生成100组
$str = uniqid($i); //根据微秒生成随机16进制字符
$num = base_convert($str,16,8); //将生成的16进制转成8进制
$number = substr($num, 0,8); //将8进制的字符,从下标0开始截取前8位数,得到一组唯一的8位数
//截取生成唯一8位数的开头字符,并进行判断是否为0,如果是0开头的话,就跳出循环
$if_num = substr($number, 0,1);
if ($if_num==0) {
continue;
}
//判断$arr数组中是否存在生成的$number,存在的话就跳出循环
if (in_array($number, $arr)) {
echo "error";
continue;
}else{ //如果$arr数组中不存在生成的$number,就将$number存入$arr数组
array_push($arr, $number);
}
echo $number."</br>";
}
// echo "<pre>";
// var_dump($arr);
}
}
$class = new ClassName();
return $class->nonceStr();