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 相关文章推荐
杏林同学录(三)
Oct 09 PHP
Gregarius中文日期格式问题解决办法
Apr 22 PHP
谷歌音乐搜索栏的提示功能php修正代码
May 09 PHP
php木马webshell扫描器代码
Jan 25 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
May 07 PHP
用PHP实现 上一篇、下一篇的代码
Sep 29 PHP
关于初学PHP时的知识积累总结
Jun 07 PHP
php判断手机访问还是电脑访问示例分享
Jan 20 PHP
php中fsockopen用法实例
Jan 05 PHP
学习php设计模式 php实现适配器模式
Dec 07 PHP
CI框架整合smarty步骤详解
May 19 PHP
IIS 7.5 asp Session超时时间设置方法
Apr 17 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
浅谈Windows下 PHP4.0与oracle 8的连接设置
2006/10/09 PHP
PHP has encountered an Access Violation 错误的解决方法
2010/01/17 PHP
php获取后台Job管理的实现代码
2011/06/10 PHP
PHP中几个常用的魔术常量
2012/02/23 PHP
php 解决substr()截取中文字符乱码问题
2016/07/18 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
jquery下jstree简单应用 - v1.0
2011/04/14 Javascript
表单JS弹出填写提示效果代码
2011/04/16 Javascript
jquery、js操作checkbox全选反选
2014/03/12 Javascript
jQuery+css3实现转动的正方形效果(附demo源码下载)
2016/01/27 Javascript
js HTML5 Canvas绘制转盘抽奖
2020/09/13 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
vue 动态修改a标签的样式的方法
2018/01/18 Javascript
原生JS实现网页手机音乐播放器 歌词同步播放的示例
2018/02/02 Javascript
微信小程序下拉框功能的实例代码
2018/11/06 Javascript
[47:52]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第二场 11.26
2020/11/30 DOTA
[01:30:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第二场 2月2日
2021/03/11 DOTA
全面理解Python中self的用法
2016/06/04 Python
Python探索之爬取电商售卖信息代码示例
2017/10/27 Python
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
2018/01/11 Python
python解决pandas处理缺失值为空字符串的问题
2018/04/08 Python
详解如何为eclipse安装合适版本的python插件pydev
2018/11/04 Python
python程序 创建多线程过程详解
2019/09/23 Python
Python安装与卸载流程详细步骤(图解)
2020/02/20 Python
tensorflow使用L2 regularization正则化修正overfitting过拟合方式
2020/05/22 Python
Scrapy中如何向Spider传入参数的方法实现
2020/09/28 Python
惠普香港官方商店:HP香港
2019/04/30 全球购物
生产部厂长助理职位说明书
2014/03/03 职场文书
会计工作决心书
2014/03/11 职场文书
英文演讲稿开场白
2014/08/25 职场文书
行政处罚决定书
2015/06/24 职场文书
欢送会主持词
2015/07/01 职场文书
幼儿园安全教育随笔
2015/08/14 职场文书
2016年教师党员承诺书范文
2016/03/24 职场文书
关于销售人员的年终工作总结要点
2019/08/15 职场文书
排查Tomcat进程假死的问题
2022/05/06 Servers