Laravel Undefined index: документ с использованием PHPWord и DomPDF - PullRequest
0 голосов
/ 18 мая 2018

Я пытаюсь преобразовать файл odt в pdf, используя PHPWord и DomPDF, я прочитал некоторые проблемы с их git о том, как это сделать, и нашел это руководство .Но я получаю и ошибку на laravel о библиотеке PHPWord Неопределенный индекс: документ по маршруту

C: \ xampp \ htdocs \ DAW2M14 \ vendor \ phpoffice \ phpword \ src \ PhpWord \ Reader \Word2007.php

foreach ($steps as $step) {
    $stepPart = $step['stepPart'];
    $stepItems = $step['stepItems'];
    foreach ($relationships[$stepPart] as $relItem) {
        $relType = $relItem['type'];
        if (isset($stepItems[$relType])) {
            $partName = $stepItems[$relType];
            $xmlFile = $relItem['target'];
            $this->readPart($phpWord, $relationships, $partName, $docFile, $xmlFile);
        }
    }
}

Ошибка начинается в foreach.

Мой PHP-код:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\URL_Document;
use App\Document;
use App\Http\Requests;
use Dompdf\Dompdf;

class CU_13Controller extends Controller
{
    /**
     * Show the application dashboard.
     *
     * @return \Illuminate\Http\Response
     */
    public function generaPDF(Request $request, $id, $nombre, $path, $pathb, $formato) {

        $ruta=$path.'/'.$pathb;

        if($formato == "pdf"){
            return response()->download(storage_path("app/{$ruta}"));
        }else{
            $FilePath = "app/".$ruta;

            $phpWord = new \PhpOffice\PhpWord\PhpWord();
            $document = $phpWord->loadTemplate(storage_path("app/{$ruta}"));
            $document->saveAs('temp.odt');

            $domPdfPath = base_path('/../vendor/dompdf/dompdf');
            \PhpOffice\PhpWord\Settings::setPdfRendererPath($domPdfPath);
            \PhpOffice\PhpWord\Settings::setPdfRendererName('DomPDF');

            $phpWord = \PhpOffice\PhpWord\IOFactory::load('temp.odt');
            $pdfWriter = \PhpOffice\PhpWord\IOFactory::createWriter( $phpWord, 'PDF' );
            $pdfWriter->save(storage_path("app/documents{$nombre}.pdf"));

            return response()->download(storage_path("app/documents{$nombre}.pdf"));
        }

    }
}

Я не знаю, какого родаошибка, которую я делаю

...