php - 使用当前年份创建 AutoIncrement ID - PHP
问题描述
这可能是一个重复的问题,但我没有足够的声誉来评论某人的答案。我想以这种格式 2018-00001 创建一个 user_id,但是当我在这里实现答案时,它给了我一个错误。
syntax error, unexpected 'return' (T_RETURN)
这个错误指出了这一行。
$fiveDigitNumber = return str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);
我创建了一个名为year_table的新表,其中包含LatestNumber和Year两列,然后实现该函数。
function generateStudentId(){
$year = date("Y");
$latestNumber = 0;
$res = mysql_query("select * from year_table where Year=$year");
$result = mysql_fetch_array($res);
if($result)
$latestNumber = $result['LatestNumber'];
$latestNumber++;
if($result){
mysql_query("update year_table set LatestNumber=$latestNumber where Year=$year");
}
else
mysql_query("insert into year_table values($year,$latestNumber)");
$fiveDigitNumber = return str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);
$studentId = $year.$fiveDigitNumber;
return $studentId;
}
解决方案
它导致T_RETURN因为您在该行上使用了不必要的返回。
语法错误,意外的“返回”(T_RETURN)
应该是这样的
$fiveDigitNumber = str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);
推荐阅读
- azure - Display Azure Service Principal Rights
- javascript - 在黄瓜步骤定义中使用正则表达式忽略字符
- angular - 角管模板上下文
- javascript - 如何让 div 元素包裹其他元素?(preudo 选择器存在于代码中)
- c# - C#在节点内加载带有特殊字符的XML
- java - Error in reading yaml file using `snakeyaml`
- gremlin - gremlin - show query execution time
- php - 输出具有相同值的数组
- jasmine - 如何调试“错误:超时 - 在 jasmine.DEFAULT_TIMEOUT_INTERVAL 指定的超时内未调用异步回调”?
- docker - Docker 上的 Websocket 与 nginx