for($i=0,$ii=1;$i<$_POST['no_of_coupon']; $ii++) {
$unique_code=uniqid();
$category_unique_code = substr($unique_code,rand(0,strlen($unique_code) - 6),6);
$i++;
echo $category_unique_code;
}
$_POST['no_of_coupon']
是否定的。例如。如果用户想要1万卢比的优惠券代码或更多,即$_POST['no_of_coupon']
,所有代码都插入到数据库中,代码是唯一的,但我已经尝试了上述方法,但它不是唯一的,那么我尝试了另一种方法
function gen_random($length=32)
{
$final_rand='';
for($i=0;$i< $length;$i++)
{
$final_rand .= rand(0,9);
}
return $final_rand;
}
for($i=0,$ii=1;$i<$_POST['no_of_coupon']; $ii++) {
$unique_code=gen_random(6);
$category_unique_code = substr($unique_code,rand(0,strlen($unique_code) - 6),6);
$i++;
echo $category_unique_code;
}
这种方法也没有生成独特的优惠券代码,我只需要6到8位数的唯一没有所以有人有任何想法生成独特的没有,请告诉我
答案 0 :(得分:0)
此代码将生成一个8位数的唯一优惠券代码:
function getUniqueCouponCode ()
{
$filename = 'number.txt';
if (file_exists($filename)) {
$actual_number = file_get_contents($filename);
} else {
$actual_number = 1;
}
file_put_contents($filename, $actual_number + 1);
return str_pad($actual_number, 8, '0', STR_PAD_LEFT);
}
答案 1 :(得分:-2)
Try this to create a 6 or 8 digit unique no:
<?php
$date=date('y-m-dh:i:s');
echo substr(md5($date),0,6);
?>