如何将 HTML table 转换为 Excel 电子表格

how to convert an HTML table into an Excel spreadsheet

我使用 laravel-excel 3.1 版。 我的代码是:

class UsersExport implements FromView
{
    private $users;

    public function __construct()
    {
        $this->users = User::query()->select('name' , 'family' , 'mobile' ,'national_code' , 'email' , 'registered_from')->get();
    }

    public function view(): View
    {
        return view('test', [
            'users' => $this->users
        ]);
    }
}

在我的控制器中,我调用了 vies 函数:

return (new UsersExport())->view();

这里我得到的是视图(html 页面)而不是 excel 电子表格。我该怎么办?

您需要在 UserExport class 中添加 use Exportable;,然后调用 return (new UsersExport())->download('something.xls');

P. S. 在 UserExport 构造函数中编写查询不是一个好主意。最好在调用之前获取它们,然后传递给您的 new UserExport()