我创建了一个for循环,但是它没有根据for循环条件打印输出。
for( $c=0; $c < $total; $c++ )
{
$latestID = AccessControlEntry::orderBy('AccessControlID', 'desc')->first();
$numberID = explode("AC", $latestID->AccessControlID);
$numberID[1] = $numberID[1] + 1;
$newID = "AC";
$newID = $newID.$numberID[1];
}
我从数据库中抓取了最后一个ID值(AccessControlID),随后为AccessControlID中的每个新条目添加1 ($numberID[1] + 1)。
例如:$total = 3。从我对for循环逻辑的理解来看,它不应该打印出2组$newID吗?
谁能告诉我哪里/什么地方出错了?
解决方案是将从DB中提取值的代码行带到循环之外。
$latestID = AccessControlEntry::orderBy('AccessControlID', 'desc')->first();
$numberID = explode("AC", $latestID->AccessControlID);
for( $c=0; $c < $total; $c++ ) {
$numberID[1] = $numberID[1] + 1;
$newID[] = $numberID[1];
}
print_r($newID);