PHPWord使用简介

PHP导出word文档,可实现自动分页,可插入图片,表格。

1、下载PHPWord
(1)使用composer:

      "require":{
           "phpoffice/phpword": "v0.14.*"
       }

(2)GitHub:点击打开链接

2、使用
(1)GitHub上有详细说明,下载的包里面有很多例子
(2)简单示例
(3)中文手册

require_once './ThinkPHP/Library/Org/PHPWord/vendor/autoload.php';
$title = $data['version'] . ' ' . $data['semester'] . ' ' . $data['unit'];
$num = $data['num'];
$mean = $data['mean'];
$phpWord = new \PhpOffice\PhpWord\PhpWord();
// 新建文档
$section = $phpWord->addSection();
$phpWord->addTitleStyle(2, array('bold' => true, 'size' => 14, 'name' => 'Arial', 'Color' => '333'), array('align' => 'center'));
$section->addTitle("$title", 2);
$section->addTextBreak(1);
$section->addText("姓名:题量: $num分数:");
$tableStyle = array(
    'borderSize' => 6,
    'borderColor' => '006699'
);
$table = $section->addTable($tableStyle);
$fancyTableCellStyle = array('valign' => 'center');
$cellRowSpan = array('vMerge' => 'restart', 'valign' => 'center');
$cellRowContinue = array('vMerge' => 'continue');
$fontStyle['name'] = 'Arial';
$fontStyle['size'] = 14;
$thStyle['name'] = 'Arial';
$thStyle['size'] = 12;
$thStyle['bold'] = true;
$paraStyle['align'] = 'center';
$table->addRow(500);
$table->addCell(3500, $fancyTableCellStyle)->addText('答题区', $thStyle, $paraStyle);
$table->addCell(1000, $fancyTableCellStyle)->addText('批改区', $thStyle, $paraStyle);
$table->addCell(3500, $fancyTableCellStyle)->addText('答题区', $thStyle, $paraStyle);
$table->addCell(1000, $fancyTableCellStyle)->addText('批改区', $thStyle, $paraStyle);
$len = ceil($num / 2);
for ($i = 0; $i < $len; $i++) {
    $table->addRow(500);
    $table->addCell(3500, $fancyTableCellStyle)->addText(($i * 2 + 1) . '.' . $mean[$i * 2], $fontStyle);
    $table->addCell(1000, $cellRowSpan)->addText(' ');
    if ($num % 2 != 0 && $i == $len - 1) {
        $table->addCell(3500, $fancyTableCellStyle)->addText('');
    } else {
        $table->addCell(3500, $fancyTableCellStyle)->addText(($i * 2 + 2) . '.' . $mean[$i * 2 + 1], $fontStyle);
    }
    $table->addCell(1000, $cellRowSpan)->addText(' ');
    $table->addRow(1000);
    $table->addCell(3500, $fancyTableCellStyle)->addText('答案:');
    $table->addCell(null, $cellRowContinue);
    if ($num % 2 != 0 && $i == $len - 1) {
        $table->addCell(3500, $fancyTableCellStyle)->addText('');
    } else {
        $table->addCell(3500, $fancyTableCellStyle)->addText('答案:');
    }
 
    $table->addCell(null, $cellRowContinue);
}
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save("./Public/doc/word.docx");
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 156,757评论 4 359
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,478评论 1 289
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,540评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,593评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,903评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,329评论 1 210
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,659评论 2 309
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,383评论 0 195
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,055评论 1 238
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,337评论 2 241
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,864评论 1 256
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,227评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,820评论 3 231
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,999评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,750评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,365评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,260评论 2 258

推荐阅读更多精彩内容

  • 是什么 如果你知道yum、apt-get、npm、bower等命令中的一种或者多种,那么,你也能很快知道compo...
    旱魃一样阅读 3,077评论 0 9
  • Composer是一个非常流行的PHP包依赖管理工具,已经取代PEAR包管理器,对于PHP开发者来说掌握Compo...
    bycall阅读 2,104评论 0 1
  • 钢厂醒了! 设备的觉醒,当我们看见,当我们听见,我们开始为生存而战。关停后的摧毁,我们要生存,当生存的复杂度到了一...
    xtrbb阅读 121评论 0 0
  • 鹿玙-40 1.什么时间照的照片? 2012年6月,具体几号记不清了,反正是在大四临近毕业的时候。 2.在什么地方...
    鹿玙阅读 247评论 1 0
  • Vue选项的合并策略 1.选项 el、propsData 的合并策略 说明:el选项或者propsData选项只能...
    安乐_f487阅读 254评论 0 0