微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Laravel-excel,在导出为CSV

如何解决Laravel-excel,在导出为CSV

希望你们中的一个可以帮助我解决一个小问题:)

我正在努力做到这一点:

Ancient Petrified Leaf,"18703","Majordomo Executus","Bossen","Priest"

对此:

"Ancient Petrified Leaf",18703,"Priest"

让我们假装这些是列/表名:

A,B,C,D,E

表格:

$table->string('A');
$table->integer('B');
$table->string('C');
$table->string('D');
$table->string('E');

这是我的出口班:

<?PHP

namespace App\Exports;

use App\SoftReserve;

use Maatwebsite\Excel\Concerns\FromQuery;
use Maatwebsite\Excel\Concerns\Exportable;
use Maatwebsite\Excel\Concerns\WithMapping;
use Maatwebsite\Excel\Concerns\WithColumnFormatting;
use PHPOffice\PHPSpreadsheet\Style\NumberFormat;

class PugsExport implements FromQuery,WithColumnFormatting,WithMapping
{

    use Exportable;

    public function __construct($id)
    {
        $this->id = $id;
    }

    public function query()
    {
        return SoftReserve::query()->where('pug_id',$this->id);
    }

    public function columnFormats(): array
    {
        return [
            'A' => NumberFormat::FORMAT_TEXT,'B' => NumberFormat::FORMAT_NUMBER,'C' => NumberFormat::FORMAT_TEXT,'D' => NumberFormat::FORMAT_TEXT,'E' => NumberFormat::FORMAT_NUMBER,];
    }

    /**
    * @var $softreserve
    */
    public function map($softreserve): array
    {
        return [
            $softreserve->item_name,$softreserve->item_id,$softreserve->item_boss,$softreserve->character_name,$softreserve->character->spec->class,];
    }

}

有什么建议,为什么当我导出为CSV时我没有收到正确的列格式? 似乎colA不是字符串(不带引号)? 似乎colB是一个字符串,而不是数字/整数(不带引号)。

我在做什么错了?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。