栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

PHP随机生成不重复的8位卡号(数字)和卡密(字符串)

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PHP随机生成不重复的8位卡号(数字)和卡密(字符串)

一、生成不重复的随机数字,可自定义长度

function getRandNumber($start=0,$end=9,$length=8){
//初始化变量为0
$connt = 0;
//建一个新数组
$temp = array();
while($connt < $length){
//在一定范围内随机生成一个数放入数组中
$temp[] = mt_rand($start, $end);
//$data = array_unique($temp);
//去除数组中的重复值用了“翻翻法”,就是用array_flip()把数组的key和value交换两次。这种做法比用 array_unique() 快得多。
$data = array_flip(array_flip($temp));
//将数组的数量存入变量count中
$connt = count($data);
}
//为数组赋予新的键名
shuffle($data);
//数组转字符串
$str=implode(",", $data);
//替换掉逗号
$number=str_replace(',', '', $str);
return $number;
}

二、随机生成不重复的8位卡密

function makeCardPassword() {
 $code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
 $rand = $code[rand(0,25)]
     .strtoupper(dechex(date('m')))
     .date('d').substr(time(),-5)
     .substr(microtime(),2,5)
     .sprintf('%02d',rand(0,99));
 for(
     $a = md5( $rand, true ),
     $s = '0123456789ABCDEFGHIJKLMNOPQRSTUV',
     $d = '',
     $f = 0;
     $f < 8;
     $g = ord( $a[ $f ] ),
     $d .= $s[ ( $g ^ ord( $a[ $f + 8 ] ) ) - $g & 0x1F ],
     $f++
 );
 return  $d;
}

相关推荐:《PHP教程》

以上就是PHP随机生成不重复的8位卡号(数字)和卡密(字符串)的详细内容,更多请关注考高分网其它相关文章!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/263443.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号