标签: maatwebsite-excel

laravel excel获取标题和maatwebsite

我想只得到我的excel第一列,它将是列名.

我正在使用此代码

Excel::load($request->file, function ($reader) use($request) {

$torarray=$reader->toArray();
            $line0 = $torarray[0];
            $headers = array_keys($line0);
            $excel_header=$headers;
        });
Run Code Online (Sandbox Code Playgroud)

有时它有效但有时不起作用.当我不使用某些文件时,我在下面写下并且有效

$torarray=$reader->toArray();
            $line0 = $torarray[0][0];
            $headers = array_keys($line0);
            $excel_header=$headers;
        });
Run Code Online (Sandbox Code Playgroud)

我不明白什么是正确的解决方案.

excel laravel-5 maatwebsite-excel laravel-5.2

5
推荐指数
3
解决办法
1万
查看次数

Laravel Excel 垂直居中对齐

如何使用 laravel Excel 垂直对齐中心单元格?

我的代码:

$sheet->cells('A1:'.$column_end.$i, function ($cells) {
                $cells->setBackground('#d8d8d8');
                $cells->setFontWeight('bold');
                $cells->setValignment('middle');
            });
Run Code Online (Sandbox Code Playgroud)

但它不起作用,我的大部分单元格都垂直对齐底部。

也许不是中间!

我试过“中心”,但它也不起作用。当我尝试“顶部”或“底部”时,它起作用了。

那么为什么“中间”或“中心”没有呢?

感谢您的帮助。

php laravel maatwebsite-excel

5
推荐指数
1
解决办法
1万
查看次数

Maatwebsite Excel 3.1:导入时如何跳过重复数据?

我在 Laravel Maat 网站 Excel 3.1 上使用 Excel 导入数据。但是当数据库中有相同的数据(主键)时,就会出现错误消息

完整性约束违规:1062 密钥“PRIMARY”的重复条目“188281”

我试图理解 Maat 网站的文档,但仍然失败

public function storeData(Request $request)
        {
            //VALIDASI
            $this->validate($request, [
                'file' => 'required|mimes:xls,xlsx'
            ]);
        if ($request->hasFile('file')) {
            $file = $request->file('file');

            // dd($file); //GET FILE;
            Excel::import(new MahasiswaImport, $file); //IMPORT FILE
            return redirect('/mahasiswa')->with(['status' => 'Upload success']);
        }
        return redirect('/mahasiswa')->with(['error' => 'Please choose file before']);
    }



<?php

namespace App\Imports;

use App\Mahasiswa;
use Maatwebsite\Excel\Concerns\ToModel;
use Maatwebsite\Excel\Concerns\WithHeadingRow;
use Illuminate\Contracts\Queue\ShouldQueue;
use Maatwebsite\Excel\Concerns\WithChunkReading;
use Maatwebsite\Excel\Concerns\Importable;

class MahasiswaImport implements ToModel, WithHeadingRow, WithChunkReading, ShouldQueue

{

  use Importable; …
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-5 laravel-excel maatwebsite-excel

5
推荐指数
1
解决办法
1万
查看次数

从 Laravel Excel 导入中返回变量

下面的代码,基本示例,但我想返回错误(请参阅 import 后注释掉的 if 语句)。我如何将变量从“导入”类传递回控制器?

控制器:

public function resultsImport(Request $request)
{
    //validate the xls file
    $this->validate($request, array('student_results_import_file' => 'required'));

    if($request->hasFile('student_results_import_file')){
        $extension = File::extension($request->student_results_import_file->getClientOriginalName());
        if ($extension == "xlsx" || $extension == "xls" || $extension == "csv") {

            Excel::import(new StudentResultsImport, $request->file('student_results_import_file'));
// if $ignore_count>0 --> do stuff
            return redirect('/baadmin/students')->with('flash_message', ['success','Results Imported Successfully','Student file "'. $request->student_results_import_file->getClientOriginalName() .'" imported successfully!']);
        } else {
            return redirect('/baadmin/students')->with('flash_message', ['error','Results Import Failed','Student file "'. $request->student_results_import_file->getClientOriginalName() .'" import failed. File is a '. $extension .' file. Please upload a …
Run Code Online (Sandbox Code Playgroud)

laravel maatwebsite-excel

5
推荐指数
1
解决办法
5286
查看次数

使用 maatwebsite 将 excel 导出并保存在目录中

我正在使用maatwebsite (laravel)将客户数据写入现有的 excel 文件并从数据库动态导出,我的代码运行良好。

我正在关注以下链接:

网站

现在我想下载 excel 文件,该文件应该保存在任何目录中,例如 /uploads/customers/text.xlsx

编辑:查看我的代码:

try {
    Excel::selectSheetsByIndex(1)->load('/public/uploads/new.xlsx', function($reader) {
    $reader->sheet('sheetname',function($sheet)
    {  
      $sheet->appendRow('test','test', 'test');
    });
 }, 'UTF-8')->export('xlsx');
} catch (Exception $ex) {
    echo $ex->getMessage().$ex->getLine();
    return response(Helpers::makeDefaultErrorAjaxResponse());
}
Run Code Online (Sandbox Code Playgroud)

我如何使用 maatwebsite 功能来做到这一点,我没有得到任何这样做的功能?

php laravel maatwebsite-excel

4
推荐指数
1
解决办法
1万
查看次数

laravel maatwebsite-excel 更改工作表方向

如何更改 laravel maatwebsite excel 包中的工作表方向?我想从左变右。

A B C D
Run Code Online (Sandbox Code Playgroud)

到:

D C B A
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

   $row =  $this->userRepository->getById(1);

        $data = $row;
        Excel::create('test', function ($excel) use($data) {

            $excel->sheet('sheet', function ($sheet) use($data) {
                $sheet->fromArray($data, null, 'A1', false, false);
                $sheet->row(1, function($row) {
                });

            });
        })->store('xlsx', storage_path('excel/exports'))->download('xlsx');
Run Code Online (Sandbox Code Playgroud)

export-to-excel laravel maatwebsite-excel

4
推荐指数
1
解决办法
2244
查看次数

通过 Ajax 使用 Laravel 导出 CSV

我有一个导出 csv 功能,它在 Laravel 上运行良好。但是现在我想通过ajax调用导出函数并使用方法post,但是我没有响应。我可以从 laravel 控制器发送一个变量来响应,但不能发送文件下载。

这是我的代码:

路由文件

    Route::get('/title/show', 'TitleController@show');
    Route::post('/title/show', 'TitleController@exportFromDB');
Run Code Online (Sandbox Code Playgroud)

show.blade.php

<script>
$(document).ready(function () {
    $('#exportFromDB').click(function () {
        $.ajax({
            url: "",
            type: "post",
            headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
            data: {},
            success: function (response) {
                var a = document.createElement("a");
                a.href = response.file;
                a.download = response.name;
            }
        })
    })
})
Run Code Online (Sandbox Code Playgroud)

标题控制器.php:

    $dataExport['Oversea'] = $dataOversea;
    $this->titleRepository->export('csv', $properties, $dataExport);
Run Code Online (Sandbox Code Playgroud)

标题库.php

public function export($type, $properties, $data)
{
    if (in_array($type, self::EXPORT_TYPE)) {
        try {
            return Excel::create($properties['_title'], function ($excel) use ($data, $properties) {

                $excel->setTitle($properties['_title']);
                $excel->setCreator($properties['_creator'])
                    ->setCompany($properties['_company']); …
Run Code Online (Sandbox Code Playgroud)

php export-to-csv laravel laravel-5 maatwebsite-excel

4
推荐指数
1
解决办法
8768
查看次数

如何在 maatwebsite/excel 中从 2.x 升级到 3.x?

我将我的应用程序迁移到 Laravel 5.7。在 composer.json 中安装软件包时,我从“maatwebsite/excel:~2.1.0”升级到“maatwebsite/excel”:“^3.1”。所以现在我的导出功能不起作用不再。我尝试按照https://docs.laravel-excel.com/3.1 中的升级进行操作,但对我不起作用。这是曾经在旧版本中工作的旧代码:

$claim = Claim::all();
$count = Claim::count();
$name = 'Liste réclamations '.date('d-m-Y H-i');
    Excel::create($name, function($excel) use($claim, $count) {

        $excel->sheet('Sheetname', function($sheet) use($claim, $count) {

            $i = 2;
            $rows = $count;
            $rows++;

            $sheet->setHeight(1, 25);
            $sheet->setAutoSize(true);
            $sheet->setBorder('A1:AH'.$rows, 'thin');

            $sheet->row(1, array(

                'Utilisateur',
                'Référence',
                'Infraction',
                'Groupe oiseaux',
                "Type de braconnage",
                "Type de l'espèce",
                "Nom de l'espèce",
                "Autre info de l'espèce",
                "Description de l'oiseau",
                "Le nombre d'oiseau",
                "Le nombre d'oiseaux mis en vente",
                "Prix de vente",
                "Lieu de la …
Run Code Online (Sandbox Code Playgroud)

laravel maatwebsite-excel

4
推荐指数
1
解决办法
1874
查看次数

使用Maatwebsite Excel 3.1导出如何设置单元格的背景颜色和标题的字体大小?

我正在使用 Maatwebsite Excel 3.1 来实现导出功能。我们如何设置单元格的背景颜色和标题的字体大小?您能帮我解决这个问题吗?

谢谢你!

php maatwebsite-excel laravel-6

4
推荐指数
1
解决办法
9954
查看次数

Maatwebsite/Laravel-Excel Import 将特殊字符转换为数字 0

我有一个 CSV 文件,其中一些行的文本/单词包含特殊字符,例如\xc3\xb1,

\n\n

发生的情况是,当我尝试导入 CSV 文件时,上面或类似字符的单词将被转换为0。

\n\n

我正在使用ToModel

\n\n
use Maatwebsite\\Excel\\Concerns\\ToModel;\n
Run Code Online (Sandbox Code Playgroud)\n\n

要重现此问题,只需尝试在 CSV 文件的一个单元格中放入一个特殊字符,然后将其导入,如下所示:

\n\n
Excel::import(new CsvImport, request()->file('file'));\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n

输出:插入的数据中含有特殊字符的数据将被存储为0

\n
\n\n

注意:直接从Form添加数据不会将特殊字符转换为0,仅在通过导入上传CSV时

\n

laravel maatwebsite-excel

4
推荐指数
1
解决办法
5565
查看次数