Laravel excel 无法正确处理日语标题

Laravel excel can't handle japanese heading properly

我正在使用 laravel excel 上传 excel 文件。该文件包含最顶部的标题。然而,当标题是日语时,它没有被正确处理。

例如,如果我的文件是

+---------+--------+-------+
| bango   | name   | level |
+---------+--------+-------+
| nihongo | 日本語 | 8     |
+---------+--------+-------+
| test01  | test01 | 12    |
+---------+--------+-------+

它给出了以下输出,

这是正确的输出。 但是,当我更改标题以包含日语时,它无法正常工作。 我的文件是这样的,

+---------+--------+--------+
| 番号    | 名前   | ラベル |
+---------+--------+--------+
| nihongo | 日本語 | 8      |
+---------+--------+--------+
| test01  | test01 | 12     |
+---------+--------+--------+

输出变成

我试过把它混在一起,把一些 headers 写成英文,一些写成日文。 我的文件是这样的,

+---------+--------+--------+
| 番号    | name   | ラベル |
+---------+--------+--------+
| nihongo | 日本語 | 8      |
+---------+--------+--------+
| test01  | test01 | 12     |
+---------+--------+--------+

我的结果变成了,

尽管结果正确地给出了 name 值,但序列号不正确。 name 值应该在 level 之前,但事实并非如此。

我的控制器功能就像,

public function post($id)
    {
        $array  = (new DeliveryImport)->toArray(request('file'));
        dd($array);
    }

而我的 DeliveryImport.php 就像

class DeliveryImport implements ToModel, WithHeadingRow
{
    use Importable;
    public function model(array $row)
    {
    }
}

请注意,该代码仅在标题为日语时才有效。如果其他地方有日语,那么它就没有问题。

我已经解决了问题。解决方法是改成config/excel.php.

在该文件中找到 imports' => 'heading_row'.

然后将 formatterslug 更改为 none

在那之后它完美地工作了。