我觉得用composer安装比较好,免得引起一些不必要的麻烦,composer 会自动建立好依赖关系。
首先windows要先安装composer。不懂百度。。。
通常第三方库 都是安装在vendor目录下
开始操作:
在vendor目录 同级
新建composer.json文件
{
"comment" : "以下是PHPWord包",
"require": {
"phpoffice/phpword": "v0.14.*",
"ext-xml": "*",
"zendframework/zend-escaper": "^2.2"
}
}
如图:
我是把vendor定义到统一和extend同级 都在core 文件夹下,个人喜好。
cmd 切换到composer.json目录 composer install
下载完成
测试代码:
public function index(){
$phpWord = new PhpWord();
$section = $phpWord->addSection();
$section->addText(
'我想做一个测试看看是否成功!'
);
$section->addText(
'"Great achievement is usually born of great sacrifice, '
. 'and is never the result of selfishness." '
. '(Napoleon Hill)',
array('name' => 'Tahoma', 'size' => 40)
);
$fontStyleName = 'oneUserDefinedStyle';
$phpWord->addFontStyle(
$fontStyleName,
array('name' => 'Tahoma', 'size' => 10, 'color' => '1B2232', 'bold' => true)
);
$section->addText(
'"The greatest accomplishment is not in never falling, '
. 'but in rising again after you fall." '
. '(Vince Lombardi)',
$fontStyleName
);
//设置字体字号等
$fontStyle = new \PhpOffice\PhpWord\Style\Font();
$fontStyle->setBold(true);
$fontStyle->setName('Tahoma');
$fontStyle->setSize(13);
$myTextElement = $section->addText('"Believe you can and you\'re halfway there." (Theodor Roosevelt)');
$myTextElement->setFontStyle($fontStyle);
if(!file_exists(iconv('utf-8', 'gbk', 'D:\\报告')))
mkdir(iconv('utf-8', 'gbk', 'D:\\报告'));
$time = date('YmdHis',time());
$name = iconv('utf-8', 'gbk','D:\\报告\\'.$time . '分析报告.docx');
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save($name);
// //生成odt
// $objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'ODText');
// $objWriter->save('D:\testWord/'.$name.'.odt');
//
// //生成html
// $objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'HTML');
// \PhpOffice\PhpWord\Settings::setOutputEscapingEnabled(true);
//
// $objWriter->save('D:\testWord/'.$name.'.html');
echo '已经生成word文档!';
exit;
}
测试完成!