Docx模板PHP MySQL多行

时间:2019-02-01 16:09:57

标签: php mysql templates ms-word

我编写了一个从数据库获取信息并将其放入docx模板的代码。但是我希望它放所有记录而不只是一个。

这是我的代码:

// New Word Document
$PHPWord = new PHPWord();
$template = $PHPWord->loadTemplate('template.docx');

$objConnect = mysql_connect("localhost","root","") or die("Error Connect to Database");
$objDB = mysql_select_db("word");
$strSQL = "SELECT * FROM customer";
$objQuery = mysql_query($strSQL);
while($objResult = mysql_fetch_array($objQuery))
{
        // Add more rows / cells
        $template->setValue('CustomerID',$objResult["CustomerID"]);
        $template->setValue('Name',$objResult["Name"]);
        $template->setValue('Email',$objResult["Email"]);
        $template->setValue('CountryCode',$objResult["CountryCode"]);
        $template->setValue('Budget',$objResult["Budget"]);
        $template->setValue('Used',$objResult["Used"]);
    }
$template->save('CreateWord2.docx');

我的模板如下:

template.docx

Customer Report<br/>
CustomerID  Name       Email    CountryCode Budget      Used<br/>
«${CustomerID}» «${Name}» «${Email}» «${CountryCode}» «${Budget}» «${Used}»

输出的单词文档如下:

CreateWord2.docx

CustomerID  |Name   |   Email   |CountryCode    |Budget     Used|<br/>
C001            George     a@sk.com     GB              10.000      3.000

我想要这样:

CustomerID  |Name      |Email   |CountryCode    |Budget     |Used|<br/>
C001            George     g@sk.com     GB              10.000      3.000<br/>
C002            Robert     r@sk.com     NL              16.000      4.000

0 个答案:

没有答案