如何从导出的 csv 文件中删除双引号
How to remove double quotations from exported csv file
我正在使用 Laravel 5.8 并且我添加了 Maatwebsite 包用于从数据库导出 CSV 文件 table。
这是我导出的 class:
class ConfirmedExport implements FromCollection, WithHeadings
{
public function headings():array{
return [
];
}
public function collection()
{
return collect(WithdrawWallet::getData());
}
}
结果如下所示:
"123456789","2100","Desc","lname","fname"
但我需要从单词中删除双引号 (" "
),所以预期结果如下所示:
123456789,2100,Desc,lname,fname
那么怎么做呢?
更新#1:
我刚刚尝试了导出代码 Class:
namespace App\Exports;
use App\WithdrawWallet;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
class ConfirmedExport implements FromCollection, WithHeadings
{
public function headings():array{
return [
];
}
public function collection()
{
return collect(WithdrawWallet::getData());
}
public function getCsvSettings(): array
{
return [
'enclosure' => ''
];
}
}
它成功地从最后一个元素(即:123456789
)中删除了 " "
,但仍然显示其他元素的 " "
!
@nagidi 发布配置后,您可以在设置中更改它。
运行 以下命令:
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider" --tag=config
从 config/excel.php
中的 'enclosure' 中删除 "
(双引号)
'exports' => [
'csv' => [
'enclosure' => '', // was '"'
// other settings
],
],
现在您的 csv 导出值不再包含 "
附件。
如果您想在每次导出时更改此设置,您可以实施 WithCustomCsvSettings
关注并将 getCsvSettings
方法添加到您的 ConfirmedExport
class:
use Maatwebsite\Excel\Concerns\WithCustomCsvSettings;
class ConfirmedExport implements WithCustomCsvSettings
{
// other code
public function getCsvSettings(): array
{
return [
'enclosure' => ''
];
}
}
我正在使用 Laravel 5.8 并且我添加了 Maatwebsite 包用于从数据库导出 CSV 文件 table。
这是我导出的 class:
class ConfirmedExport implements FromCollection, WithHeadings
{
public function headings():array{
return [
];
}
public function collection()
{
return collect(WithdrawWallet::getData());
}
}
结果如下所示:
"123456789","2100","Desc","lname","fname"
但我需要从单词中删除双引号 (" "
),所以预期结果如下所示:
123456789,2100,Desc,lname,fname
那么怎么做呢?
更新#1:
我刚刚尝试了导出代码 Class:
namespace App\Exports;
use App\WithdrawWallet;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
class ConfirmedExport implements FromCollection, WithHeadings
{
public function headings():array{
return [
];
}
public function collection()
{
return collect(WithdrawWallet::getData());
}
public function getCsvSettings(): array
{
return [
'enclosure' => ''
];
}
}
它成功地从最后一个元素(即:123456789
)中删除了 " "
,但仍然显示其他元素的 " "
!
@nagidi 发布配置后,您可以在设置中更改它。
运行 以下命令:
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider" --tag=config
从
中的 'enclosure' 中删除config/excel.php
"
(双引号)'exports' => [ 'csv' => [ 'enclosure' => '', // was '"' // other settings ], ],
现在您的 csv 导出值不再包含 "
附件。
如果您想在每次导出时更改此设置,您可以实施 WithCustomCsvSettings
关注并将 getCsvSettings
方法添加到您的 ConfirmedExport
class:
use Maatwebsite\Excel\Concerns\WithCustomCsvSettings;
class ConfirmedExport implements WithCustomCsvSettings
{
// other code
public function getCsvSettings(): array
{
return [
'enclosure' => ''
];
}
}