| 
						 | 
						<?php
use Maatwebsite\Excel\Excel;
return [    'exports' => [
        /*        |--------------------------------------------------------------------------        | Chunk size        |--------------------------------------------------------------------------        |        | When using FromQuery, the query is automatically chunked.        | Here you can specify how big the chunk should be.        |        */        'chunk_size'             => 1000,
        /*        |--------------------------------------------------------------------------        | Pre-calculate formulas during export        |--------------------------------------------------------------------------        */        'pre_calculate_formulas' => false,
        /*        |--------------------------------------------------------------------------        | Enable strict null comparison        |--------------------------------------------------------------------------        |        | When enabling strict null comparison empty cells ('') will        | be added to the sheet.        */        'strict_null_comparison' => false,
        /*        |--------------------------------------------------------------------------        | CSV Settings        |--------------------------------------------------------------------------        |        | Configure e.g. delimiter, enclosure and line ending for CSV exports.        |        */        'csv'                    => [            'delimiter'              => ',',            'enclosure'              => '"',            'line_ending'            => PHP_EOL,            'use_bom'                => false,            'include_separator_line' => false,            'excel_compatibility'    => false,        ],
        /*        |--------------------------------------------------------------------------        | Worksheet properties        |--------------------------------------------------------------------------        |        | Configure e.g. default title, creator, subject,...        |        */        'properties'             => [            'creator'        => '',            'lastModifiedBy' => '',            'title'          => '',            'description'    => '',            'subject'        => '',            'keywords'       => '',            'category'       => '',            'manager'        => '',            'company'        => '',        ],    ],
    'imports'            => [
        /*        |--------------------------------------------------------------------------        | Read Only        |--------------------------------------------------------------------------        |        | When dealing with imports, you might only be interested in the        | data that the sheet exists. By default we ignore all styles,        | however if you want to do some logic based on style data        | you can enable it by setting read_only to false.        |        */        'read_only' => true,
        /*        |--------------------------------------------------------------------------        | Ignore Empty        |--------------------------------------------------------------------------        |        | When dealing with imports, you might be interested in ignoring        | rows that have null values or empty strings. By default rows        | containing empty strings or empty values are not ignored but can be        | ignored by enabling the setting ignore_empty to true.        |        */        'ignore_empty' => false,
        /*        |--------------------------------------------------------------------------        | Heading Row Formatter        |--------------------------------------------------------------------------        |        | Configure the heading row formatter.        | Available options: none|slug|custom        |        */        'heading_row' => [            'formatter' => 'slug',        ],
        /*        |--------------------------------------------------------------------------        | CSV Settings        |--------------------------------------------------------------------------        |        | Configure e.g. delimiter, enclosure and line ending for CSV imports.        |        */        'csv'         => [            'delimiter'        => ',',            'enclosure'        => '"',            'escape_character' => '\\',            'contiguous'       => false,            'input_encoding'   => 'UTF-8',        ],
        /*        |--------------------------------------------------------------------------        | Worksheet properties        |--------------------------------------------------------------------------        |        | Configure e.g. default title, creator, subject,...        |        */        'properties'  => [            'creator'        => '',            'lastModifiedBy' => '',            'title'          => '',            'description'    => '',            'subject'        => '',            'keywords'       => '',            'category'       => '',            'manager'        => '',            'company'        => '',        ],
    ],
    /*    |--------------------------------------------------------------------------    | Extension detector    |--------------------------------------------------------------------------    |    | Configure here which writer/reader type should be used when the package    | needs to guess the correct type based on the extension alone.    |    */    'extension_detector' => [        'xlsx'     => Excel::XLSX,        'xlsm'     => Excel::XLSX,        'xltx'     => Excel::XLSX,        'xltm'     => Excel::XLSX,        'xls'      => Excel::XLS,        'xlt'      => Excel::XLS,        'ods'      => Excel::ODS,        'ots'      => Excel::ODS,        'slk'      => Excel::SLK,        'xml'      => Excel::XML,        'gnumeric' => Excel::GNUMERIC,        'htm'      => Excel::HTML,        'html'     => Excel::HTML,        'csv'      => Excel::CSV,        'tsv'      => Excel::TSV,
        /*        |--------------------------------------------------------------------------        | PDF Extension        |--------------------------------------------------------------------------        |        | Configure here which Pdf driver should be used by default.        | Available options: Excel::MPDF | Excel::TCPDF | Excel::DOMPDF        |        */        'pdf'      => Excel::DOMPDF,    ],
    /*    |--------------------------------------------------------------------------    | Value Binder    |--------------------------------------------------------------------------    |    | PhpSpreadsheet offers a way to hook into the process of a value being    | written to a cell. In there some assumptions are made on how the    | value should be formatted. If you want to change those defaults,    | you can implement your own default value binder.    |    | Possible value binders:    |    | [x] Maatwebsite\Excel\DefaultValueBinder::class    | [x] PhpOffice\PhpSpreadsheet\Cell\StringValueBinder::class    | [x] PhpOffice\PhpSpreadsheet\Cell\AdvancedValueBinder::class    |    */    'value_binder' => [        'default' => Maatwebsite\Excel\DefaultValueBinder::class,    ],
    'cache' => [        /*        |--------------------------------------------------------------------------        | Default cell caching driver        |--------------------------------------------------------------------------        |        | By default PhpSpreadsheet keeps all cell values in memory, however when        | dealing with large files, this might result into memory issues. If you        | want to mitigate that, you can configure a cell caching driver here.        | When using the illuminate driver, it will store each value in a the        | cache store. This can slow down the process, because it needs to        | store each value. You can use the "batch" store if you want to        | only persist to the store when the memory limit is reached.        |        | Drivers: memory|illuminate|batch        |        */        'driver'     => 'memory',
        /*        |--------------------------------------------------------------------------        | Batch memory caching        |--------------------------------------------------------------------------        |        | When dealing with the "batch" caching driver, it will only        | persist to the store when the memory limit is reached.        | Here you can tweak the memory limit to your liking.        |        */        'batch'     => [            'memory_limit' => 60000,        ],
        /*        |--------------------------------------------------------------------------        | Illuminate cache        |--------------------------------------------------------------------------        |        | When using the "illuminate" caching driver, it will automatically use        | your default cache store. However if you prefer to have the cell        | cache on a separate store, you can configure the store name here.        | You can use any store defined in your cache config. When leaving        | at "null" it will use the default store.        |        */        'illuminate' => [            'store' => null,        ],    ],
    /*    |--------------------------------------------------------------------------    | Transaction Handler    |--------------------------------------------------------------------------    |    | By default the import is wrapped in a transaction. This is useful    | for when an import may fail and you want to retry it. With the    | transactions, the previous import gets rolled-back.    |    | You can disable the transaction handler by setting this to null.    | Or you can choose a custom made transaction handler here.    |    | Supported handlers: null|db    |    */    'transactions' => [        'handler' => 'db',    ],
    'temporary_files' => [
        /*        |--------------------------------------------------------------------------        | Local Temporary Path        |--------------------------------------------------------------------------        |        | When exporting and importing files, we use a temporary file, before        | storing reading or downloading. Here you can customize that path.        |        */        'local_path'          => storage_path('framework/cache/laravel-excel'),
        /*        |--------------------------------------------------------------------------        | Remote Temporary Disk        |--------------------------------------------------------------------------        |        | When dealing with a multi server setup with queues in which you        | cannot rely on having a shared local temporary path, you might        | want to store the temporary file on a shared disk. During the        | queue executing, we'll retrieve the temporary file from that        | location instead. When left to null, it will always use        | the local path. This setting only has effect when using        | in conjunction with queued imports and exports.        |        */        'remote_disk'         => null,        'remote_prefix'       => null,
        /*        |--------------------------------------------------------------------------        | Force Resync        |--------------------------------------------------------------------------        |        | When dealing with a multi server setup as above, it's possible        | for the clean up that occurs after entire queue has been run to only        | cleanup the server that the last AfterImportJob runs on. The rest of the server        | would still have the local temporary file stored on it. In this case your        | local storage limits can be exceeded and future imports won't be processed.        | To mitigate this you can set this config value to be true, so that after every        | queued chunk is processed the local temporary file is deleted on the server that        | processed it.        |        */        'force_resync_remote' => null,    ],];
  |