我生成唯一代码以将它们用作优惠券代码。这就是优惠券代码的生成方式
public function generateCoupon(){
$chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$res = "";
for ($i = 0; $i < 6; $i++) {
$res .= $chars[mt_rand(0, strlen($chars) - 1)];
}
return $res;
}
为了确保我在 DB 中没有多次使用相同的代码,我检查生成的代码是否存在:
$coupon = $this->generateCoupon();
while($repository->findOneByCode($coupon) != null){
$coupon = $this->generateCoupon();
}
用户请求优惠券代码并将其分配给用户,直到使用为止。
优惠券在使用时应该如何处理?现在代码已从数据库中删除,可以再次使用。这是好习惯吗?还是我应该永远存储代码?您将如何管理您的优惠券?