php编写批量生成不重复的卡号密码代码


Posted in PHP onMay 14, 2015

闲的蛋疼的时候,顺便加强下自己对PHP中数组操纵的一些技巧,就写了下面的一段小代码,可以随机生成卡号密码对应的数组,并且自动去重复,思路没有,纯粹瞎掰。

<?php header('Content-Type:text/html; charset=utf-8');
 function MakeCard()
 {
  set_time_limit(0);

  //处理缓冲区
  ob_end_clean();
  ob_implicit_flush(true);
  echo str_pad(" ", 256);

  if(intval($_POST['num']>0)) $num=intval($_POST['num']); //数量
  if(intval($_POST['point']>0)) $point=intval($_POST['point']); //点数
  if(intval($_POST['batch']>0)) $batch=intval($_POST['batch']); //批号
  if(($_POST['ym']!="")) $ym=$_POST['ym']; //发行年月
  else $ym=date('ym');

  if($num==0) return;

  $num=$num*100; //卡的张数,即记录数

  echo "<p>开始 ".date("H:i:s")." ";

  for($i=1;$i<=$num;$i++)
  {
   $sn=sprintf("%02s%s%06s",$batch,$ym,$i);
   $seek=mt_rand(0,9999).mt_rand(0,9999).mt_rand(0,9999); //12位
   $start=mt_rand(0,20);
   $str=strtoupper(substr(md5($seek),$start,12));
   $str=str_replace("O",chr(mt_rand(65,78)),$str);
   $str=str_replace("0",chr(mt_rand(65,78)),$str);
   $row=array('sn'=>$sn,'password'=>$str,'created'=>time(),'point'=>$point);
   //查重
  //在这里加插入数据的代码.
  print_r($row);
  }
  echo " 结束 ".date("H:i:s")."";
  printf("<br>成功生成:%s万个 %s点 的密码</p>",$num/1e4,$point);
  return $num;
 } //函数结束

$_POST['num']=1;
$_POST['point']=10;
$_POST['batch']=10;
$_POST['ym']='1405';
echo MakeCard(); ?>

方法二:

<?php
$numLen=16;
$pwdLen=10;
$c=100;//生成100组卡号密码
$sNumArr=range(0,9);
$sPwdArr=array_merge($sNumArr,range('A','Z'));

$cards=array();
for($x=0;$x< $c;$x++){
 $tempNumStr=array();
 for($i=0;$i< $numLen;$i++){
  $tempNumStr[]=array_rand($sNumArr);
 }
 $tempPwdStr=array();
 for($i=0;$i< $pwdLen;$i++){
  $tempPwdStr[]=$sPwdArr[array_rand($sPwdArr)];  
 }
 $cards[$x]['no']=implode('',$tempNumStr);
 $cards[$x]['pwd']=implode('',$tempPwdStr);
}
array_unique($cards);
print_r($cards);
?>

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
php读取msn上的用户信息类
Dec 05 PHP
PHP Socket 编程
Apr 09 PHP
PHP通过session id 实现session共享和登录验证的代码
Jun 03 PHP
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
Jun 20 PHP
PHP实现更新中间关联表数据的两种方法
Sep 01 PHP
php中运用http调用的GET和POST方法示例
Sep 29 PHP
php实现事件监听与触发的方法
Nov 21 PHP
PHP中使用SimpleXML检查XML文件结构实例
Jan 07 PHP
php表单提交与$_POST实例分析
Jan 26 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
Mar 25 PHP
PHP全局使用Laravel辅助函数dd
Dec 26 PHP
php编写的抽奖程序中奖概率算法
May 14 #PHP
深入浅出php socket编程
May 13 #PHP
PHP中的traits简单使用实例
May 13 #PHP
PHP中的traits实现代码复用使用实例
May 13 #PHP
浅谈本地WAMP环境的搭建
May 13 #PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
May 13 #PHP
简单解决新浪SAE无法上传文件的问题
May 13 #PHP
You might like
转PHP手册及PHP编程标准
2006/12/17 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
PHP使用内置函数file_put_contents写入文件及追加内容的方法
2015/12/07 PHP
利用laravel+ajax实现文件上传功能方法示例
2017/08/13 PHP
让插入到 innerHTML 中的 script 跑起来的实现代码
2006/07/01 Javascript
asp.net和asp下ACCESS的参数化查询
2008/06/11 Javascript
js的onload事件及初始化按钮事件示例代码
2013/09/25 Javascript
JavaScript模拟重力状态下抛物运动的方法
2015/03/03 Javascript
javascript验证邮件地址和MX记录的方法
2015/06/16 Javascript
纯JavaScript手写图片轮播代码
2016/10/20 Javascript
JQuery Ajax WebService传递参数的简单实例
2016/11/02 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
js实现图片上传预览原理分析
2017/07/13 Javascript
详解Vue+axios+Node+express实现文件上传(用户头像上传)
2018/08/10 Javascript
vue获取元素宽、高、距离左边距离,右,上距离等还有XY坐标轴的方法
2018/09/05 Javascript
JavaScript实现表单注册、表单验证、运算符功能
2018/10/15 Javascript
JavaScript静态作用域和动态作用域实例详解
2019/06/17 Javascript
Python+django实现文件下载
2016/01/17 Python
Python常用算法学习基础教程
2017/04/13 Python
Python 创建空的list,以及append用法讲解
2018/05/04 Python
django将图片上传数据库后在前端显式的方法
2018/05/25 Python
python读取文件名并改名字的实例
2019/01/07 Python
python儿童学游戏编程知识点总结
2019/06/03 Python
浅谈Python 敏感词过滤的实现
2019/08/15 Python
Python线程条件变量Condition原理解析
2020/01/20 Python
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
为您搜罗全球潮流時尚品牌:HBX
2019/12/04 全球购物
优秀党员主要事迹
2014/01/19 职场文书
四议两公开实施方案
2014/03/28 职场文书
2014年党务公开方案
2014/05/08 职场文书
迎新生欢迎词
2015/01/23 职场文书
文明礼仪倡议书
2015/04/28 职场文书
2019年教师节:送给所有老师的祝福语
2019/09/05 职场文书
JavaGUI模仿QQ聊天功能完整版
2021/07/04 Java/Android
JavaScript 数组去重详解
2021/09/15 Javascript
springboot读取nacos配置文件
2022/05/20 Java/Android