我正在尝试在我的zend框架项目中创建一个word文档,但它无效!
这是我的行动代码:
public function createwordAction(){
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender();
require_once 'Zend/Service/LiveDocx/MailMerge.php';
try{
$mailMerge = new Zend_Service_LiveDocx_MailMerge();
$mailMerge->setUsername('***********')
->setPassword('******');
$mailMerge->setLocalTemplate('/license-agreement-template.docx');
$mailMerge->assign('software', 'Magic Graphical Compression Suite v1.9')
->assign('licensee', 'Henry Döner-Meyer')
->assign('company', 'Co-Operation')
->assign('date', 'January 11, 2010')
->assign('time', 'January 11, 2010')
->assign('city', 'Berlin')
->assign('country', 'Germany');
$mailMerge->createDocument();
$document = $mailMerge->retrieveDocument('pdf');
file_put_contents('document.pdf', $document);
}
catch (Exception $e) {
die ('Application error: ' . $e->getMessage());
}
}
我的模板位于项目的根目录(公用文件夹)中。该模板是从this教程下载的,我没有编辑或打开它......
catch异常显示此错误:
应用程序错误:无法从磁盘读取本地模板。
我也尝试将模板的路径更改为:
$templatepath = APPLICATION_PATH + "../public/license-agreement-template.docx";
$mailMerge->setLocalTemplate($templatepath);
但结果相同......
然后我尝试用chmod更改文件权限,如下所示:
chmod("/license-agreement-template.docx",0755);
然后我收到了这个错误:
警告:chmod():没有这样的文件或目录
有没有人遇到过同样的问题?或者有人可以帮我这个吗?
答案 0 :(得分:1)
我从未听说过LiveDocx,但这就是我所做的:
抛出异常if (!is_readable($filename))
您的文件可能存在一些正确的问题(或者您的文件名不正确)Change permissions of file uploaded by PHP