我最近在 Laravel 中下载了 maatwebsite/excel 包,用于以 Excel 格式导出数据库记录。
安装成功,我可以以 excel (.xls) 格式导出预期的数据库记录。
但我注意到有一个额外的列和行被插入到预期的数据中,如下所示:
这里行号。8 和 H 列是不需要的。以下是我的控制器代码:
...
$audit_logs = $model->whereBetween('audit_log_created_date', [$_from, $_to])->get();
$file_name = 'Audit Log Report ('.$_from.' to '.$_to.')';
$type = AuditLog::$audit_log_type;
$action = AuditLog::$audit_log_action;
Excel::create($file_name, function($excel) use ($audit_logs,$type,$action) {
$excel->sheet('Sheet 1', function($sheet) use ($audit_logs,$type,$action) {
$sheet->loadView('/admin/audit-log/_export')->with([
'audit_logs' => $audit_logs,
'type' => $type,
'action' => $action
]);
});
})->export();
以下是我的视图代码:
<style>
.trr {
background-color: #0099FF;
color: #ffffff;
align: center;
padding: 10px;
height: 20px;
}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<html>
<table>
<thead>
<tr class="trr">
<td>S.no.</td>
<td>Type</td>
<td>Action</td>
<td>Event</td>
<td>Description</td>
<td>Username</td>
<td>Date & Time</td>
</tr>
</thead>
<tbody>
@if(!empty($audit_logs))
<?php $count = 0; ?>
@foreach($audit_logs as $audit_log)
<?php $count = $count+1; ?>
<tr style="border: 1px solid #040404; background-color: <?php if($count%2==0) echo '#E3F2FD'; else echo '#BBDEFB'; ?>;">
<td>{{ $count }}</td>
<td>{{ $type[$audit_log->audit_log_type] or null }}</td>
<td>{{ $action[$audit_log->audit_log_action] or null }}</td>
<td>{{ $audit_log->audit_log_event_id or null}}</td>
<td>{{ $audit_log->audit_log_description or null}}</td>
<td>{{ $audit_log->user->user_name or null}}</td>
<td>{{ $audit_log->audit_log_created_date or null}}</td>
</tr>
@endforeach
@endif
</tbody>
</table>
</html>
如果有人可以确定问题,请告诉我。
感谢您的帮助。