Laravel7 Import Data Using Excel

 Step-1:

composer create-project --prefer-dist laravel/laravel blog

 Step-2:

composer require maatwebsite/Excel

 Step-3:


'providers' => [

....

Maatwebsite\Excel\ExcelServiceProvider::class,

],

'aliases' => [

....

'Excel' => Maatwebsite\Excel\Facades\Excel::class,

],


 Step-4:

php artisan vendor:publish


 Step-5:

php artisan make:import UsersImport --model=User


Step-6

web.php

Route::get('importpage','MyController@importpage');
Route::post('imported','MyController@imported');

 Step-7:

Controllers\MyController.php


<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Excel;
use App\Imports\ImportUsers;

class MyController extends Controller
{
    //
    public function importpage()
    {
        return view('importdata');
    }
    public function imported(Request $request)
    {
      
        $path1 = $request->file('excelfile')->store('files'); 
        $path=storage_path('app').'/'.$path1;  
        /** Method 1 **/
          $data = \Excel::import(new ImportUsers,$path);  
        
    }
}


Step-8:


Imports/UserImport.php

<?php namespace App\Imports; use App\User; use Maatwebsite\Excel\Concerns\ToModel; use Maatwebsite\Excel\Concerns\WithHeadingRow; use Maatwebsite\Excel\Concerns\SkipsOnError; use Hash; class ImportUsers implements ToModel,WithHeadingRow,SkipsOnError { /** * @param array $row * * @return \Illuminate\Database\Eloquent\Model|null */ public function model(array $row) { return new User([ 'name'=>$row['name'], 'email'=>$row['email'], 'password'=>Hash::make('password') ]); } public function onError(\Throwable $error) { } }

 Step-9:

Finish

Comments

Popular posts from this blog

Laravel Passpost

Export CSV File

ANY