使用当前年份创建自动增量id-php

ghg1uchk  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(363)

这个问题在这里已经有答案了

php解析/语法错误;以及如何解决这些问题(18个答案)
为什么我不应该在php中使用mysql函数(12个答案)
两年前关门了。
这也许是一个重复的问题,但我没有足够的声誉来评论别人的答案。我想创建一个2018-00001格式的用户标识,但是当我在这里实现这个答案时,它给了我一个错误。

syntax error, unexpected 'return' (T_RETURN)

这个错误指出了这条线。

$fiveDigitNumber = return str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);

我创建了一个名为year\u 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;
}
nqwrtyyt

nqwrtyyt1#

因为你在那条线上使用了不必要的回报,所以它导致了tïu的回报。
语法错误,意外的“return”(t\u return)
应该是这样的,

$fiveDigitNumber =  str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);
xlpyo6sf

xlpyo6sf2#

只需删除return语句。函数调用中不需要return语句。

$fiveDigitNumber = str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);

相关问题