| Server IP : 54.233.248.239 / Your IP : 172.28.1.13 Web Server : Apache System : Linux ip-172-28-29-189 6.5.0-1014-aws #14~22.04.1-Ubuntu SMP Thu Feb 15 15:27:06 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.2.34-43+ubuntu22.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/vinumday2_0/vendor/maatwebsite/excel/src/Maatwebsite/Excel/Files/ |
Upload File : |
<?php namespace Maatwebsite\Excel\Files;
use Illuminate\Foundation\Application;
use Maatwebsite\Excel\Excel;
use Maatwebsite\Excel\Exceptions\LaravelExcelException;
abstract class ExcelFile extends File {
/**
* @var bool|string
*/
protected $delimiter;
/**
* @var bool|string
*/
protected $enclosure;
/**
* @var null
*/
protected $encoding = null;
/**
* @param Application $app
* @param Excel $excel
*/
public function __construct(Application $app, Excel $excel)
{
parent::__construct($app, $excel);
$this->file = $this->loadFile();
}
/**
* Get file
* @return string
*/
abstract public function getFile();
/**
* Get delimiter
* @return string
*/
protected function getDelimiter()
{
return $this->delimiter;
}
/**
* Get enclosure
* @return string
*/
protected function getEnclosure()
{
return $this->enclosure;
}
/**
* Get filters
* @return array
*/
public function getFilters()
{
return [];
}
/**
* Start importing
*/
public function handleImport()
{
return $this->handle(
get_class($this)
);
}
/**
* Load the file
* @return \Maatwebsite\Excel\Readers\LaravelExcelReader
*/
public function loadFile()
{
// Load filters
$this->loadFilters();
// Load base settings
$this->loadBaseSettings();
// Load the file
$file = $this->excel->load(
$this->getFile(),
null,
$this->encoding
);
return $file;
}
/**
* Load the filter
* @return void
*/
protected function loadFilters()
{
// Register the filters
$this->excel->registerFilters(
$this->getFilters()
);
// Loop through the filters
foreach($this->getFilters() as $filter)
{
// Enable the filter
$this->excel->filter($filter);
}
}
/**
* Load base settings
*/
protected function loadBaseSettings()
{
$this->loadCSVSettings();
}
/**
* Load CSV Settings
*/
protected function loadCSVSettings()
{
// Get user provided delimiter
$delimiter = $this->getDelimiter();
// Set it when given
if($delimiter)
$this->excel->setDelimiter($delimiter);
// Get user provided enclosure
$enclosure = $this->getEnclosure();
// Set it when given
if($enclosure)
$this->excel->setEnclosure($enclosure);
}
/**
* Dynamically call methods
* @param string $method
* @param array $params
* @return mixed
*/
public function __call($method, $params)
{
return call_user_func_array([$this->file, $method], $params);
}
}