2014-09-30 134 views
0

我使用phpdocx來生成Word文檔。phpdocx使用wordfragment替換模板頭變量不起作用

我已經動態地改變了文字標題。 所以我想動態地替換頭部變量。他們說,它可以使用WordFragment方法來完成,但它不能正常工作 phpdocx論壇.. http://www.zxcv.phpdocx.com/en/forum/default/topic/734

這裏是我的代碼,我把$ TESTTT $變量在頭

//path to the CreateDocx class within your PHPDocX installation 
require_once '../../../classes/CreateDocx.inc'; 

$docx = new CreateDocxFromTemplate('Doc.docx'); 

//create the Word fragment that is going to replace the variable 
$wf = new WordFragment($docx, 'document'); 
$text='try to add head'; 

$wf->addText($text); 

$docx->replaceVariableByWordFragment(array('TESTTT' => $wf), array('type' => 'block')); 


$docx->createDocx('tessst'); 
+0

你應該問phpdocx論壇 – Sal00m 2014-09-30 09:04:57

+0

我也done.i希望能夠快速修復這個 – 2014-09-30 09:06:41

回答

0

從模板創建的時候,你還需要要添加:

require_once'../../../classes/CreateDocxFromTemplate.inc';

+0

我發現出錯在網上API文檔的錯誤,你可以檢查從類標題和頁腳不支持:-( – 2014-10-01 09:08:34

0

你真的需要使用Word片段嗎?

使用PHPDocx,您可以輕鬆地替換文本變量和佔位符圖像,並且大部分時間應該足夠了。

如果不是這種情況,您可以使用導入頁眉和頁腳方法,或使用添加頁眉方法替換整個頁面。

0

目前phpdocx不支持通過wordfragment頁眉或頁腳更改變量。

0

該代碼與我一起工作

$docx = new CreateDocxFromTemplate('docTemplate/HeaderTest.docx'); 
$docx->setTemplateSymbol('#'); 
$variables = array('VAR_NAME' => "SOME TEXT"); 
$options = array('target' => 'header'); 
$docx->replaceVariableByText($variables, $options);