Ничего не печатается в документе с использованием PHPWord

Я использую PHPWord для загрузки файлов DOCX в PHP. Но ничего не печатается в файле, если я пытаюсь скачать его. Но содержимое отображается в файле, который сохраняется на сервере. Ниже приведен код, который я использовал. Может кто-нибудь, пожалуйста, скажите мне, в чем проблема.

<?php
include "../includes/config.inc.php";
include '../PHPWord.php';

// Create a new PHPWord Object
$PHPWord = new PHPWord();

// Every element you want to append to the word document is placed in a section. So you need a section:
$section = $PHPWord->createSection();

$section->addText('CANDIDATES DETAILS');

$filename='test';

$file=$filename.'.docx';
$objWriter = PHPWord_IOFactory::createWriter($PHPWord, 'Word2007');
$objWriter->save('/form_doc/'.$filename.'.docx');//download the file
header('Content-Description: File Transfer');
header('Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
header('Content-Disposition: attachment; filename='.$file);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);

Заранее спасибо.

С Уважением,

Неху

2

Решение

Ваш должен установить дорожка подать в readfile() а также filesize() функции:

$file = $filename.'.docx';
$filepath = '/form_doc/' . $file;
$objWriter = PHPWord_IOFactory::createWriter($PHPWord, 'Word2007');
$objWriter->save($filepath);

//download the file
header('Content-Description: File Transfer');
header('Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');
header('Content-Disposition: attachment; filename='.$file);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($filepath));
readfile($filepath);
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]