لاراول یک روش جدید از کدنویسی است که در دنیای برنامه نویسی به زبان های انسان نزدیک شده است،خواندن و نوشتن فایل های اکسل از گذشته یکی از مشکلات مهم در برنامه نویسی است.گاهی نیازمند وارد کردن اطلاعات به درون اکسل و گاهی نمایش و یا ثبت اطلاعات اکسل درون دیتابیس هستیم ،به این منظور ابزار های کارآمدی در نظر گرفته شده است که کار با این فایل ها را تسهیل می کند .


به دو نمونه از پکیج های مورداستفاده در لاراول به منظور کار با excel اشاره میکنیم:

۱-Laravel Excel

یکی از پکیج های بسیار مناسب و ساده به این منظور پکیج Laravel Excel است .به کمک این پکیج میتوانید اطلاعات خود را که درون یک فایل اکسل ثبت شده ، به داخل دیتابیس وارد کنید یا از دیتابیس استخراج کنید .همچنین می توانید اطلاعات را با کمک صف ها ، به منظور بهتر انجام شدن عملیات ، Export کنید . به این منظور ابتدا با دستور زیر این پکیج را نصب کنید :


composer require maatwebsite/excel

و کلاس Excel  را به config/app اضافه می کنیم:

]<='providers'
,Maatwebsite\Excel\ExcelServiceProvider::class
[

]<='aliases'
,Excel'=>Maatwebsite\Excel\Facades\Excel::class'
[

سپس دستور زیر را اجرا کنید :

php artisan vendor:publish
  •  Export
    برای استخراج اطلاعات از دیتابیس از دستور download استفاده میکنیم .
    کد های زیر نمونه ای برای جدول کاربران است .
    ابتدا یک کلاس در مسیر App/Exports با دستور زیر میسازیم :
php artisan make:export UsersExport --model=User

سپس در کنترولر مورد نظر دستور Export  را وارد می کنیم:

()public function export
}
;return Excel::download(new UsersExport, 'users.xlsx')
{

توجه داشته باشید که مسیر زیر به صورت Excel باشد.

;use Maatwebsite\Excel\Facades\Excel
  • Import
    همچنین به طریق مشابه برای import کردن هم یک کلاس مشابه میسازیم.
php artisan make:import UsersImport --model=User

و در کلاس ساخته شده کد مورد نظر را وارد میکنیم ( دقت کنید که اینجا از جدول User استفاده شده در نتیجه در استفاده از جداول دیگر فیلد ها تغییر خواهند کرد )

public function model(array $row)
}
])return new User
,name' => $row[0]'
,email' => $row[1]'
,password' => Hash::make($row[2])'

;([

{

و سپس در کنترولر مورد نظر با متد import اطلاعات را دریافت میکنیم :

() public function import
}
;Excel::import(new UsersImport, 'users.xlsx')

;return redirect('/')->with('success', 'All good!')
{

۲- PhpExcel

PhpExcel یک کتابخانه برای خواندن از یک فایل اکسل و یا نوشتن در آن است البته میتوان اطلاعات خوانده شده را import هم کرد .در مواردی لازم داریم ستون هایی از یک فایل مجزا بخوانیم در این کتابخانه با کمک دستور load میسر است
یک مثال ساده از این کتابخانه (توجه داشته باشید که فرمت فایلتان xlsx باشد)

;include_once(app_path()."/lib/Classes/PHPExcel/IOFactory.php")
;'path ='excel/list.xlsx$
;objPHPExcel = \PHPExcel_IOFactory::load($path)$

هم میتوانید این کتابخانه را به پروژه ی خود اضافه کنید و هم میتوانید به صورت پکیج با دستور زیر نصب کنید( که در مثال فوق من از کتابخانه به صورت مستقیم استفاده کردم ) :

composer require phpoffice/phpspreadsheet

مثال بالا با استفاده از پکیج phpspreadsheet :

;'path ='excel/list.xlsx$

;objPHPExcel =IOFactory::load($path)$

با استفاده از متد های این پکیج می توانید سلول های مختلف این پکیج را بخوانید یا استایل ها را تغییر دهید
در ادامه ی مثال قبل :

}   foreach ($objPHPExcel->getWorksheetIterator() as $worksheet)
             ;()highestRow = $worksheet->getHighestRow$
          } for ($row = 2; $row <= $highestRow; $row++)

 ,۲)number = $worksheet->getCellByColumnAndRow$
                                                                   ;()row)->getValue$
                                                              ;'<echo $number.'<br
{
{

 


نتیجه ی کد بالا :


شرکت طراحی وب سایت اینتن متشکل از تیم حرفه ای ، باتجربه و آکادمیک در عرصه فضای مجازی است که عمده فعالیت هایش حول طراحی سایت های اینترنتی، سئو سایت و بهینه سازی وب سایت و برندسازی اینترنتی می باشد.