在localhost中,我可以将列格式设置为PHPExcel_Cell_DataType::TYPE_STRING
,这里的工作正常是使用此类型的.xls文件
列值设置为0
。
为什么我尝试PHPExcel_Cell_DataType::TYPE_STRING
格式是因为像65081035703021
这样的字符串在ms-excel中显示为数字(基数为10)
对我来说出了什么问题?
答案 0 :(得分:0)
尝试此代码
namespace App\Exports;
use PhpOffice\PhpSpreadsheet\Shared\Date;
use PhpOffice\PhpSpreadsheet\Style\NumberFormat;
use Maatwebsite\Excel\Concerns\WithColumnFormatting;
use Maatwebsite\Excel\Concerns\WithMapping;
class InvoicesExport implements WithColumnFormatting, WithMapping
{
public function map($invoice): array
{
return [
$invoice->invoice_number,
Date::dateTimeToExcel($invoice->created_at),
$invoice->total
];
}
public function columnFormats(): array
{
return [
'B' => NumberFormat::FORMAT_DATE_DDMMYYYY,
'C' => NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE,
];
}
}