- 首页 > it技术 > >
- 需求
- 【批量生成有规律 不重复 长度一致的会员卡号】
文章图片
- 实现步骤
//卡号的唯一标识
$card_biaoshi = $_POST['card_biaoshi'];
//生成卡号的批次
$card_pici = $_POST['card_pici'];
//生成的数量==循环的次数
$rand_time = $_POST['card_num'];
//将批次进入批次表
$data = https://www.it610.com/article/array('card_num'=> $rand_time,
'card_biaoshi' => $card_biaoshi,
'card_pici'=> $card_pici,
'add_time'=> time(),
);
$result = M("cardtype")->data($data)->add();
if ($result) {
$sql = "insert into `zl_card2`(`card_num`,`card_biaoshi`,`pici_id`) values";
for ($i = 0;
$i < $rand_time;
$i++) {
$no = $card_biaoshi . date('Ymd') . str_pad($i, 6, '0', STR_PAD_LEFT);
$sql .= "('{$no}','{$card_biaoshi}','{$result}'),";
}
$sql= substr($sql, 0, strlen($sql) - 1);
$haha = M();
$rs= $haha->execute($sql);
if ($rs) {
$this->success('添加成功');
} else {
$this->error('添加失败!');
}
}
- 说明
1.str_pad() 函数的使用 可以查找手册
2.千万不要进行循环语句中插入数据库,此乃大忌!
推荐阅读