public function actionScheduleTypeDownload() { $id = isset($_REQUEST['id']) ? intval($_REQUEST['id']) : null; if ((int) $id) { $report = new ScheduleTypeReportProcessed(); $reportResult = $report->with('ex_schedule_report')->findByPk($id); $reportResult->file_content; $extension = $reportResult->ex_schedule_report->report_format; $file_name = $reportResult->check_period_start . ' - ' . $reportResult->check_period_end; $report_string = !empty($reportResult->file_content) ? $reportResult->file_content : ''; $file_name .= '.' . $extension; It::downloadFile($report_string, $file_name); } else { $this->redirect($_SERVER['HTTP_REFERER']); } }