2 回答

TA貢獻1946條經驗 獲得超3個贊
您的代碼執行以下操作:
$month=12;
// ...
$labels = $this->getLastMonths($month);
接著:
private function getLastMonths($month)
{
for ($i=0 ; $i>$month ; $i++)
// ...
這個循環永遠不會工作 -$month是 12,$i是 0,0 永遠不會大于 12。不會有迭代,$labels永遠不會設置,并且getLastMonths()什么都不返回。
你需要:
for ($i=0 ; $i < $month ; $i++)
或者也許(根據您的要求,我不確定您到底在做什么):
for ($i=0 ; $i <= $month ; $i++)

TA貢獻1851條經驗 獲得超3個贊
我認為您沒有在 getLastMonths($month) 函數中初始化 $labels 。使用以下代碼。
private function getLastMonths( $month)
{
$labels = [];
for ($i=0 ; $i<$month ; $i++)
{
$labels[]=jdate(Carbon::now()->subMonths($i))->format('%B');
}
return $labels;
}
- 2 回答
- 0 關注
- 121 瀏覽
添加回答
舉報