0
嗨我试图循环日历月和年,但我的循环停止在索引函数的第一次迭代你能帮我吗?Laravel 5.3循环错误
功能指数:
public function index()
{
$users = DB::table('users')->where('roles_id', '2')->get();
date_default_timezone_set("Asia/Hong_Kong");
for ($iterateYear = 2017; $iterateYear < 2018; $iterateYear++) {
for ($iterateMonth = 1; $iterateMonth <= 12; $iterateMonth++) {
/* Set the date */
$date = strtotime(sprintf('%s-%s-01', $iterateYear, $iterateMonth));
return $this->renderCalenderMonth($date);
}
}
return view('transaction.index', [
'users' => $users
]);
}
RenderCalendarMonth功能:
公共职能renderCalenderMonth($日期){
// $date = strtotime(date("Y-m-d"));
$NUMBER_OF_COLUMNS = 37;
$day = date('d', $date);
$month = date('m', $date);
$year = date('Y', $date);
$firstDay = mktime(0,0,0,$month, 1, $year);
$title = strftime('%B', $firstDay);
$dayOfWeek = date('D', $firstDay);
$daysInMonth = cal_days_in_month(0, $month, $year);
/* Get the name of the week days */
$timestamp = strtotime('next Sunday');
$weekDays = [];
for($i = 0; $i < $NUMBER_OF_COLUMNS; $i++) {
$weekDays[] = strftime('%a', $timestamp);
$timestamp = strtotime('+1 day', $timestamp);
}
$blank = date('w', strtotime("{$year}-{$month}-01"));
$divid = $title.$year;
return view('transaction.index', [
'date' => $date,
'day' => $day,
'month' => $month,
'year' => $year,
'firstDay' => $firstDay,
'title' => $title,
'dayOfWeek' => $dayOfWeek,
'daysInMonth' => $daysInMonth,
'timestamp' => $timestamp,
'weekDays' => $weekDays,
'blank' => $blank,
'divid' => $divid,
'NUMBER_OF_COLUMNS' => $NUMBER_OF_COLUMNS
]);
}
我应该在哪里通过发生器?在意见? –
我会做的是这样的: – EpisodeInfinity
会做什么是这样的:'$ months = []; $ months [] = $ this-> renderCalenderMonth($ date); '现在你有几个月的时间,那么你可以迭代它,并且每个月都可以做你想做的事。 – EpisodeInfinity