这可能是重复的问题,但是我没有足够的声誉来评论某人的答案。我想以2018-00001的格式创建一个user_id,但是当我实现答案here时,它给我一个错误。
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;
}
答案 0 :(得分:1)
这引起了 T_RETURN ,因为您在该行上使用了不必要的 return 。
语法错误,意外的“返回”(T_RETURN)
应该是这样
$fiveDigitNumber = str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);
答案 1 :(得分:-1)
只需删除return语句。函数调用中不需要return语句。
$fiveDigitNumber = str_pad((int) $latestNumber,5,"0",STR_PAD_LEFT);