PHPExcel Допустимый объем памяти исчерпан - PullRequest
0 голосов
/ 14 марта 2020

Я создаю большой файл Excel с изображениями, и теперь у меня есть эта проблема. Без изображений все работает хорошо. В дополнение к этому я не могу увеличить лимит памяти.

Что мне делать? Я не могу найти реальные примеры кода, я слышал о читателе, но я не понимаю, как правильно его использовать.

foreach ($array as $key => $value) {
    $sheet->setCellValue("A".$i, $value['articul']);
    $sheet->setCellValue("B".$i, $value['text']);

    //uploading image to my server

    $type_img = explode( ".",$value['image']);
    $type_img =  ".".end($type_img);
    $pht_lnk = $value['image'];
    $photoname = explode("/", $value['image']);
    $photoname = end($photoname);
    $dir_upl = 'img/'.$photoname;
    if (!fileExists($dir_upl)) {
        if(file_put_contents($dir_upl, file_get_contents($pht_lnk))) { 
            $imagePath = $dir_upl;
        }
        else{
            $imagePath = NULL;
        }
    }
    else{
        $imagePath = $dir_upl;
    }

    //here i'm trying to add image

    if (file_exists($imagePath)) {
        $imgg = new PHPExcel_Worksheet_Drawing();
        $imgg->setPath($imagePath);
        $imgg->setCoordinates("C".$i);             
        $imgg->setOffsetX(0);
        $imgg->setOffsetY(0);    
        $sheet->getRowDimension(2)->setRowHeight(190);
        $imgg->setWorksheet($sheet);
    } 
    $sheet->setCellValue("D".$i, $value['price']);
    $i++;
}

1 Ответ

1 голос
/ 20 марта 2020

Если вы не можете увеличить лимит памяти, попробуйте другие библиотеки

PHP -Export-Data Эли Дикинсона

simple excel

PHP_XLSXWriter

...