Laravel-excel: 134217728 рдмрд╛рдЗрдЯреНрд╕ рдХреА рдЕрдиреБрдордд рд╕реНрдореГрддрд┐ рдЖрдХрд╛рд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 19 рдЬреБрд▓ре░ 2018  ┬╖  22рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: Maatwebsite/Laravel-Excel

рдЖрд╡рд╢реНрдпрдХ рд╢рд░реНрддреЗрдВ

  • [X] рдЖрдкрдХреЗ рдХреЛрдб рдХреЗ рдмрд╛рд╣рд░ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо, рд╕рдорд╕реНрдпрд╛ Laravel Excel рд╕реЗ рдЕрд▓рдЧ рд╣реИред
  • [X] рдЬрд╛рдВрдЪ рдХреА рдЧрдИ рдХрд┐ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рджрд░реНрдЬ рдирд╣реАрдВ рд╣реИред
  • [X] рдЬрд╛рдБрдЪ рдХреА рдЧрдИ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рдкреАрдЖрд░ рдкреНрд░рд╕реНрддреБрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред

рд╕рдВрд╕реНрдХрд░рдгреЛрдВ

  • рдкреАрдПрдЪрдкреА рд╕рдВрд╕реНрдХрд░рдг: 7.1.13
  • рд▓рд╛рд░рд╡реЗрд▓ рд╕рдВрд╕реНрдХрд░рдг: 5.6
  • рдкреИрдХреЗрдЬ рд╕рдВрд╕реНрдХрд░рдг: ^3.0

рд╡рд┐рд╡рд░рдг

рдореИрдВ рд╣реЛ рд░рд╣реА рд╣реИ Allowed memory size of 134217728 bytes exhausted рдЬрдм рдореИрдВ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ FromQuery рд╡рд┐рдХрд▓реНрдк

рдкреНрд░рдЬрдирди рдХреЗ рдЪрд░рдг

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░:

рдореИрдВ рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ :)

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░:

рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА

namespace App\Exports;

use App\OldTransaction;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Http\Request;
use jDate;
use Maatwebsite\Excel\Concerns\Exportable;
use Maatwebsite\Excel\Concerns\FromQuery;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;

class OldDepositExport implements FromQuery, ShouldQueue, WithMapping, WithHeadings, ShouldAutoSize
{
    use Exportable;

    /**
     * DepositExport constructor.
     * <strong i="27">@param</strong> Request $request
     */
    public function __construct(Request $request)
    {
    }

    public function headings(): array
    {
        return [
            'ID',
        ];
    }


    public function map($transaction): array
    {
        return [
            $transaction->id,
        ];
    }

    public function query()
    {
        return User::query()
            ->where('status', '=', 1)
            ->select(['id']);
    }
}

рдЗрд╕ рдЫрд╡рд┐ рдХреЛ рджреЗрдЦреЗрдВ https://i.imgur.com/yMgUqXP.jpg

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЖрдк рдХрд┐рд╕рд╕реЗ рдЙрддреНрддрд░ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ?

рд╣рдорд╛рд░рд╛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдореБрдлрд╝реНрдд рдФрд░ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИред рд╣рдо рдХреЛрдИ рджрд╛рдпрд┐рддреНрд╡ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рджрд╛рдпрд┐рддреНрд╡ рдирд╣реАрдВ рд╣реИред рд╣рдо рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдпрд╛рд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдВрдЧреЗред

рдпрджрд┐ рдЖрдк рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд░реВрдк рд╕реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╡рд┐рд╕реНрддреГрдд рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рдЗрд╕рдХреА рддрддреНрдХрд╛рд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЖрдзрд╛рд░ рдкрд░ рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ [email protected] рдпрд╛ рдлреЛрди +31 (0)10 744 9312 рдкрд░ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВред

рд╕рднреА 22 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХреНрдпрд╛ рдХреЛрдИ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рдЪрд╛рд░ рджрд┐рдиред рдХреЛрдИ рдЬрд╡рд╛рдм рдирд╣реАрдВ :-(

рдЖрдк рдХрд┐рд╕рд╕реЗ рдЙрддреНрддрд░ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ?

рд╣рдорд╛рд░рд╛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдореБрдлрд╝реНрдд рдФрд░ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИред рд╣рдо рдХреЛрдИ рджрд╛рдпрд┐рддреНрд╡ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рджрд╛рдпрд┐рддреНрд╡ рдирд╣реАрдВ рд╣реИред рд╣рдо рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдпрд╛рд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдВрдЧреЗред

рдпрджрд┐ рдЖрдк рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд░реВрдк рд╕реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╡рд┐рд╕реНрддреГрдд рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рдЗрд╕рдХреА рддрддреНрдХрд╛рд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЖрдзрд╛рд░ рдкрд░ рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ [email protected] рдпрд╛ рдлреЛрди +31 (0)10 744 9312 рдкрд░ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВред

рдареАрдХ рд╣реИ рддреЛ рдХреГрдкрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рди рдХрд░реЗрдВред рд╢рд╛рдпрдж рдХреЛрдИ рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ PHP рдореЗрдореЛрд░реА рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдбреЗрдЯрд╛ рд╣реЛ рдФрд░ рдореЗрдореЛрд░реА рдХреЛ рдУрд╡рд░рдлреНрд▓реЛ рдХрд░ рджреЗ ... рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рдХреЛрдИ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИред

@jlcarpioe рдореЗрд░реЗ рдкрд╛рд╕ рд▓рдЧрднрдЧ 200k рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВред рд╕рдорд╕реНрдпрд╛ рддрдм рд╣реЛрддреА рд╣реИ рдЬрдм рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдкрддреНрд░рдХ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ

рдХреНрдпрд╛ рдЖрдкрдиреЗ php.ini рдореЗрдВ рдореЗрдореЛрд░реА_рд▓рд┐рдорд┐рдЯ рдХреЛ рдЕрдзрд┐рдХрддрдо рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛?

@ bagana89 рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ

рдореИрдВ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдкреБрдирд░реБрддреНрдкрд╛рджрди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдореИрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ 300K рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдп рдореЗрдВ рд╕реНрдореГрддрд┐ рдЙрдкрдпреЛрдЧ рдмрдврд╝ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ PhpSpreadsheet рдХреЛ рдЙрд╕ рдХрд╛рд░реНрдпрдкреБрд╕реНрддрд┐рдХрд╛ рдХреЛ рдЦреЛрд▓рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рд╣рд░ рдмрд╛рд░ рдмрдбрд╝реА рд╣реЛрддреА рдЬрд╛ рд░рд╣реА рд╣реИред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░ рдореЗрдореЛрд░реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рднреА рдЧрд▓рдд рдирд╣реАрдВ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдореЗрдореЛрд░реА рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЗрддрдиреА рдЬрд▓реНрджреА рдУрд╡рд░рдлреНрд▓реЛ рд╣реЛ рдЬрд╛рддреА рд╣реИред

ShouldAutoSize рдХреЛ рдЫреЛрдбрд╝рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдп рдореЗрдВ рдХрд╛рд░реНрдпрдкреБрд╕реНрддрд┐рдХрд╛рдУрдВ рдХреЗ рдХреЙрд▓рдо рдЖрдпрд╛рдореЛрдВ рдХреА рдкреБрдирд░реНрдЧрдгрдирд╛ рдХрд░реЗрдЧрд╛ред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдореЗрдореЛрд░реА рд▓реЗрддрд╛ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ 1 рдЬреАрдмреА рд░реИрдо рдЖрд╡рдВрдЯрд┐рдд рд╣реИ рдФрд░ рдЕрднреА рднреА рд╕рдИрджрд╡рдЬрд╝реАрд░реА рдХреЗ рд╕рдорд╛рди рдкрд░рд┐рдгрд╛рдо рд╣реИред
рдмрд╕ v2.1 рд╕реЗ v3.1 рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ред v2.1 рдХреЗ рд╕рд╛рде рд╡рд╣реА рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рд░рд╣реА рдереА рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдПрдХреНрд╕реЗрд▓ :: v2.1 рдореЗрдВ рдмрдирд╛рдПрдВ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд╕реНрдЯрд╛рдЗрд▓ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдерд╛ред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ рд╕рдордп (рдлреНрд░реЙрдордХреНрд╡реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдЪрдВрдХрд┐рдВрдЧ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдореЗрдореЛрд░реА рдХреА рднрд╛рд░реА рдорд╛рддреНрд░рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ - рд▓рдЧрднрдЧ 200k рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рд▓рд┐рдП 3 рдЧрд┐рдЧреНрд╕ рддрдХ)ред рд▓реЗрдХрд┐рди рдЪрдВрдХрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдпрд╛рдд рдХрд░рдирд╛ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред (рд╕реНрдореГрддрд┐ рдХрднреА рднреА 50MB рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛрддреА)

рдореЗрд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ 15 рд╣рдЬрд╛рд░ рд░рд┐рдХреЙрд░реНрдб рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рджреА рд╣реИред рдореИрдВ рдХреНрдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

рдпрд╣ рддреНрд░реБрдЯрд┐ рд╣реИ:

[реирежрезреп-резрез-реирек реиреи:рейреп:релреп] рд╕реНрдерд╛рдиреАрдпред рддреНрд░реБрдЯрд┐: резрейрекреирезренренреирео рдмрд╛рдЗрдЯреНрд╕ рдХреА рдЕрдиреБрдордд рд╕реНрдореГрддрд┐ рдЖрдХрд╛рд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ (резреореоренрекрейремрео рдмрд╛рдЗрдЯреНрд╕ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛) {"рдЕрдкрд╡рд╛рдж": "[рд╡рд╕реНрддреБ] (рд╕рд┐рдореНрдлрдиреА \ рдШрдЯрдХ \ рдбреАрдмрдЧ \ рдЕрдкрд╡рд╛рдж \ рдШрд╛рддрдХ рддреНрд░реБрдЯрд┐ рдЕрдкрд╡рд╛рдж ( рдХреЛрдб: 1): C:\wamp64\www\.....\vendor\phpoffice\phpspreadsheet\src\PhpSpreadsheet\Collection\Cells.php:421 рдкрд░ 134217728 рдмрд╛рдЗрдЯреНрд╕ рдХреА рдореЗрдореЛрд░реА рдХрд╛ рдЖрдХрд╛рд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ (18874368 рдмрд╛рдЗрдЯреНрд╕ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛)ред )
[рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕]

0 {рдореБрдЦреНрдп}

"}

рдЖрдкрдХреЛ рдЕрдкрдиреЗ php.ini рдореЗрдВ рдЕрдиреБрдордд рдореЗрдореЛрд░реА рд╕реАрдорд╛ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдпрд╛ ini_set . рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА

рдореИрдВрдиреЗ рдХрд┐рдпрд╛, рдореЗрд░реЗ рдкрд╛рд╕ 1G рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдЬрдм рдЖрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ php-cli рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд┐рддрдиреА рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддреА рд╣реИ? рдпрд╣ рддрдм 1Gig рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП

рд╕реНрдореГрддрд┐ рд╕реАрдорд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ phpinfo рдХреЗ рдЕрдиреБрд╕рд╛рд░ 4GB рдкрд░ рд╕реЗрдЯ рд╣реИ рдФрд░ рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реИред

рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ

рдПрдХ 'рд╕рдорд╛рдзрд╛рди' рдЖрдкрдХреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХрдИ рд▓реЛрдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░ рджреЗрдЧрд╛, рдЙрдирдХреЗ рдмреАрдЪ рдореЗрдореЛрд░реА рдЬрд╛рд░реА рдХрд░реЗрдЧрд╛, рдФрд░ рдлрд┐рд░ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдорд░реНрдЬ рдХрд░рдХреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рд▓рдп рднреЗрдЬ рджреЗрдЧрд╛ред

рджреЛрд╖ред:

  • рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕реНрдерд╛рди
  • рдЕрдзрд┐рдХ рд╕рдордп рдмрд┐рддрд╛рдпрд╛ (рдЧреИрд░ рдмреБрджреНрдзрд┐рдорд╛рди рд▓реВрдк)
  • рдЕрдзрд┐рдХ рдХреЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЧреИрд░-рдЖрдЙрдЯ-рдСрдл-рдж-рдмреЙрдХреНрд╕)

рдкреЗрд╢реЗрд╡рд░реЛрдВред:

  • рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдПрдХ рд╣реА рдореБрджреНрджрд╛, рд╕реНрдореГрддрд┐ рд╕реАрдорд╛ 512 рдПрдордмреА, 4K рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ

рдЕрдВрддрд┐рдо рд╕рдорд╛рдзрд╛рди
рдмрд╛рдд рддреЛ рдкреБрд░рд╛рдиреА рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рдЬреЛ рднреА рдЗрд╕реЗ рдкрдврд╝ рд░рд╣рд╛ рд╣реИ рдЙрд╕реЗ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐
рдпрджрд┐ рдЖрдк ToModel рдпрд╛ ToCollection рдХрд╛ рдЖрдпрд╛рдд рдпрд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЙрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдореГрддрд┐ рдХреЗ рд╡рд┐рд╢рд╛рд▓ рдЖрд╡рдВрдЯрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
рд╕рдВрдЧреНрд░рд╣ рдпрд╛ рд╕рд░рдгреА рдЬреИрд╕реЗ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд░реВрдкреЛрдВ рдореЗрдВ рдбреЗрдЯрд╛ред

рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ ToModel рдпрд╛ ToCollect рдХреЛ рд▓рд╛рдЧреВ рди рдХрд░реЗрдВ, рдЖрдкрдХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдФрд░ OneEachRow рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдХреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдСрдкрд░реЗрд╢рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдЬреЛ рдЖрдкрдХреЛ onRow рд╡рд┐рдзрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдПрдХреНрд╕реЗрд▓ рд░реЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдкрд╛рд╕ рд╣реЛрдЧрд╛ред рдЖрдк рдЗрд╕реЗ рдПрдХ рд╕рд╣рдпреЛрдЧреА рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрд░рдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП WithHeadingRow рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдкрдирд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ $row->toArray() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рддреЗрдЬ рдФрд░ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИред

рдкреБрдирд╢реНрдЪ: рдпрджрд┐ рдЖрдкрдХреЛ рдЕрднреА рднреА рдореЗрдореЛрд░реА рд▓рд┐рдорд┐рдЯ рдПрд░рд░ рдорд┐рд▓рддрд╛ рд╣реИ, рддреЛ рдмрд╕ рдЗрд╕ рддрд░рд╣ рдХреА рдЕрдВрддрд┐рдо рдкрдВрдХреНрддрд┐ рдореЗрдВ рд░рд┐рдЯрд░реНрди рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдЬреЛрдбрд╝реЗрдВ
рд╡рд╛рдкрд╕реА;

рдзрдиреНрдпрд╡рд╛рдж

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рдерд╛ рдФрд░ @MoFoLuWaSo рдХреЗ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЗ рд╕рд╛рде рдореИрдВрдиреЗ рдЕрдкрдиреЗ +128Mb рдореЗрдореЛрд░реА рдЙрдкрдпреЛрдЧ рдХреЛ рдШрдЯрд╛рдХрд░ 54Mb рдХрд░ рджрд┐рдпрд╛ред

1) рдПрдХ рдбреАрдЯреАрдУ рд▓рд╛рдЧреВ рдХрд░реЗрдВред рдЗрд╕рд╕реЗ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдмрд╕реЗ рдХрдо рд╣реЛ рдЧрдпрд╛ред
2) рдбреАрдЯреАрдУ рдХреЗ рдЧреБрдгреЛрдВ рдХрд╛ рдЖрджреЗрд╢ рджреЗрдВ рдФрд░ withMapping рд╣рдЯрд╛ рджреЗрдВ
3) ShouldAutoSize рд╣рдЯрд╛рдПрдВ

@Saeedvz рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

namespace App\DataTransferObjects;

class OldDepositRow
{
    public int $id;
    public string $created_at;
}

рддрдерд╛

namespace App\Exports;

use App\DataTransferObjects\OldDepositRow;

class OldDepositExport implements FromCollection, ShouldQueue, WithHeadings
{
    use Exportable;

    public function headings(): array
    {
        return [
            'ID',
        ];
    }

    public function collection()
    {
        $users = User::query()
            ->where('status', '=', 1)
            ->select(['id']);

        return $users->map(
           function ($user) {
                $row = new OldDepositRow();
                $row->transaction_id = $user->transaction->id;

                // cast objects like Carbon or BigDecimal to string
                $row->created_at = $user->transaction->created_at->format('d-m-Y');

                return $row;
            }
        );
    }
}
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

matthewslouismarie picture matthewslouismarie  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ellej16 picture ellej16  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

wwendorf picture wwendorf  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

muhghazaliakbar picture muhghazaliakbar  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rossjcooper picture rossjcooper  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ