我想拥有并且id为前8位数字是日期(yyyymmdd),其余的将是每天重置的数字增量。
例如:
id
----------
2017301101
2017301102
2017301103
2017011201
请注意,日期更改时会重置ID。我如何在PHP中实现这一点?
答案 0 :(得分:0)
要创建此ID,请使用PHP date function,就像这样。
function generateId($existingIds) {
$currentDate = date('Ymd');
$id = 1;
while (in_array($currentDate . sprintf('%02d', $id),$existingIds)) {
$id++;
}
return $currentDate . sprintf('%02d', $id);
}
我使用sprintf格式化数字,使其始终至少为两位数(01,10,100)。之后,我使用in_array检查生成的id是否尚未在数组中。
然后你可以通过这样的方式提供现有id的数组来调用这个函数。
$idArray = [];
array_push($idArray,generateId($idArray));
在这里生成一个id并立即将其推送到数组。
答案 1 :(得分:-2)