8-14 2,670 views
/**
* 生成唯一随机数字串
* $unix=0表示随机串以普通时间即年月日时分秒串上毫秒数再串上一个四位的随机数,共22位
* $unix=1表示随机串以时间戳串上毫秒数再串上一个四位的随机数,共18位
* 两种参数生成的随机串是一样的,唯一区别是用时间戳生成的随机串短一点
*/
public function createRandNum($prefix,$unix = 0)
{
$time = (bool)$unix ? time() : date("YmdHis");
$msec = explode('.', microtime(1));
$msec = str_pad($msec[1], 4, "0");
$randNum = $prefix.'_'.$time . $msec . mt_rand(1000, 9999);
return $randNum;
}