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执行速度全攻略(上)
Oct 09 PHP
php5新改动之短标记启用方法
Sep 11 PHP
php 数组动态添加实现代码(最土团购系统的价格排序)
Dec 30 PHP
php旋转图片90度的方法
Nov 07 PHP
神盾加密解密教程(三)PHP 神盾解密工具
Jun 08 PHP
PHP中读取文件的8种方法和代码实例
Aug 05 PHP
叫你如何修改Nginx与PHP的文件上传大小限制
Sep 10 PHP
PHP各种异常和错误的拦截方法及发生致命错误时进行报警
Jan 19 PHP
laravel5创建service provider和facade的方法详解
Jul 26 PHP
PHP实现支持加盐的图片加密解密
Sep 09 PHP
laravel框架实现去掉URL中index.php的方法
Oct 12 PHP
php字符串函数 str类常见用法示例
May 15 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+DBM的同学录程序(5)
2006/10/09 PHP
php Http_Template_IT类库进行模板替换
2009/03/19 PHP
什么情况下可以不写PHP的闭合标签“?&gt;”
2014/08/28 PHP
php中删除数组的第一个元素和最后一个元素的函数
2015/03/07 PHP
typecho插件编写教程(六):调用接口
2015/05/28 PHP
Symfony2使用第三方库Upload制作图片上传实例详解
2016/02/04 PHP
php版微信发红包接口用法示例
2016/09/23 PHP
php 微信开发获取用户信息如何实现
2016/12/13 PHP
原生JS实现Ajax通过GET方式与PHP进行交互操作示例
2018/05/12 PHP
发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser
2007/11/30 Javascript
javascript 写类方式之一
2009/07/05 Javascript
JQuery Ajax通过Handler访问外部XML数据的代码
2010/06/01 Javascript
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
javascript改变position值实现菜单滚动至顶部后固定
2013/01/18 Javascript
Extjs中通过Tree加载右侧TabPanel具体实现
2013/05/05 Javascript
js 绑定键盘鼠标事件示例代码
2014/02/12 Javascript
jquery禁止回车触发表单提交
2014/12/12 Javascript
JS+CSS实现的拖动分页效果实例
2015/05/11 Javascript
JavaScript判断页面加载完之后再执行预定函数的技巧
2016/05/17 Javascript
BootStrap3学习笔记(一)之网格系统
2016/05/20 Javascript
超实用的javascript时间处理总结
2016/08/16 Javascript
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
JS加密插件CryptoJS实现的DES加密示例
2018/08/16 Javascript
Python获取文件所在目录和文件名的方法
2017/01/12 Python
numpy.transpose对三维数组的转置方法
2018/04/17 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
jupyter notebook tensorflow打印device信息实例
2020/04/20 Python
open_basedir restriction in effect. 原因与解决方法
2021/03/14 PHP
详解使用canvas保存网页为pdf文件支持跨域
2018/11/23 HTML / CSS
canvas实现圆形进度条动画的示例代码
2017/12/26 HTML / CSS
Myprotein法国官网:欧洲第一运动营养品牌
2019/03/26 全球购物
车间班长岗位职责
2013/11/30 职场文书
2014年第四季度入党积极分子思想汇报(十八届四中全会)
2014/11/03 职场文书
2014年小学班主任工作总结
2014/11/08 职场文书
感恩教师主题班会
2015/08/12 职场文书
python实现批量提取指定文件夹下同类型文件
2021/04/05 Python