我尝试显示一个带有查询结果的 excel 文件。一切都很顺利,直到我尝试使用以下代码以另一种格式显示日期字段:
> $licencies->map(function($licencie) {
>
> $licencie['dt_naissance'] = \Carbon\Carbon::createFromFormat('Y-m-d',
> $licencie['dt_naissance'])->format('d/m/y');
我现在得到一个空的 excel 文件。如果我删除代码,我会得到包含数据的文件
如何仅解析查询中的“dt_naissance”列?
这里是完整的代码:
public function build()
{
$licencies = Licencies::where('lb_assurance' , '=' , 'Lafont')
->leftJoin('activite_licencie' , 'activite_licencie.id' , '=' , 'licencies.activite_licencie_id')
->leftJoin('saisons' , 'saisons.id' , '=' , 'licencies.saison_id')
->leftJoin('pays' , 'pays.id' , '=' , 'licencies.pays_naissance_id')
->leftJoin('type_licence' , 'type_licence.id' , '=' , 'licencies.type_licence_id')
->leftJoin('structures' , 'structures.id' , '=' , 'licencies.structure_id')
->leftJoin('civilite' , 'civilite.id' , '=' , 'licencies.civilite_id')
->select('civilite.lb_civilite' , 'num_licence' , 'lb_nom' , 'lb_prenom' , 'dt_naissance' , 'pays.fr' ,'activite_licencie.lb_activite' ,'saisons.lb_saison', 'lb_surclassement' , 'structures.nom_structure' , 'lb_assurance' , 'cd_dept_naissance' , 'lb_adresse' , 'tel_fix_licencie' , 'tel_port_licencie' , 'adresse_email' , 'licencies.created_at')
//->whereRaw('DATE(licencies.created_at) = CURRENT_DATE')
->get();
$licencies->map(function($licencie) {
$licencie['dt_naissance'] = \Carbon\Carbon::createFromFormat('Y-m-d', $licencie['dt_naissance'])->format('d/m/y');
});
$excel_file = Excel::create('DailyRecapLicencesLafont', function($excel) use ($licencies) {
$excel->sheet('Excel', function($sheet) use ($licencies)
{
$sheet->fromArray($licencies);
});
});
你忘了回到里面map
。它应该是
$licencies->map(function($licencie) {
$licencie['dt_naissance'] = \Carbon\Carbon::createFromFormat('Y-m-d', $licencie['dt_naissance'])->format('d/m/y');
return $licencie; //this is the part that you miss
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句