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
php 取得瑞年与平年的天数的代码
Aug 10 PHP
基于wordpress主题制作的具体实现步骤
May 10 PHP
实现在同一方法中获取当前方法中新赋值的session值解决方法
Jun 26 PHP
20个2014年最优秀的PHP框架回顾
Oct 22 PHP
php中动态变量用法实例
Jun 10 PHP
PHP实现的简单缓存类
Jul 29 PHP
如何使用Gitblog和Markdown建自己的博客
Jul 31 PHP
laravel中的错误与日志用法详解
Jul 26 PHP
PHP按一定比例压缩图片的方法
Oct 12 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
Dec 31 PHP
Laravel5.3+框架定义API路径取消CSRF保护方法详解
Apr 06 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时间戳与日期的转换
2013/06/06 PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
2014/06/13 PHP
php封装db类连接sqlite3数据库的方法实例
2017/12/19 PHP
YII框架常用技巧总结
2019/04/27 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
2019/06/05 PHP
如何让您的中波更粗更长 - 中波框形天线制作
2021/03/10 无线电
犀利的js 函数集合
2009/06/11 Javascript
JavaScript 继承详解(一)
2009/07/13 Javascript
Javascript Web Slider 焦点图示例源码
2013/10/10 Javascript
js propertychange和oninput事件
2014/09/28 Javascript
实例讲解避免javascript冲突的方法
2016/01/03 Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
2016/03/07 Javascript
JavaScript 函数模式详解及示例
2016/09/07 Javascript
js实现input密码框显示/隐藏功能
2020/09/10 Javascript
vue中将html字符串转换成html后遇到的问题小结
2018/12/10 Javascript
JavaScript命名空间模式实例详解
2019/06/20 Javascript
layer.confirm点击第一个按钮关闭弹出框的方法
2019/09/09 Javascript
layer.confirm()右边按钮实现href的例子
2019/09/27 Javascript
JavaScript实现单图片上传并预览功能
2019/09/30 Javascript
Vue2.X和Vue3.0数据响应原理变化的区别
2019/11/07 Javascript
如何通过JS实现日历简单算法
2020/10/14 Javascript
three.js如何实现3D动态文字效果
2021/03/03 Javascript
[49:28]VP vs Optic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python定时器使用示例分享
2014/02/16 Python
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
2018/04/30 Python
使用Python实现租车计费系统的两种方法
2018/09/29 Python
对Python3+gdal 读取tiff格式数据的实例讲解
2018/12/04 Python
德国隐形眼镜店:LuckyLens
2018/07/29 全球购物
儿科护士自我鉴定
2013/10/14 职场文书
外语系毕业生自荐信范文
2013/12/16 职场文书
实习单位接收函
2014/01/11 职场文书
执行总经理岗位职责
2014/02/03 职场文书
幼儿园大班教学反思
2014/02/10 职场文书
预备党员思想汇报1000字
2014/10/07 职场文书
sentinel支持的redis高可用集群配置详解
2022/04/01 Redis
nginx搭建NFS网络文件系统
2022/04/14 Servers