当前位置: 首页 > wzjs >正文

友点企业网站管理系统 模板wordpress get option

友点企业网站管理系统 模板,wordpress get option,广州电商网站开发公司,看国外网站如何做科普最近在开发有关考试试卷相关的内容,需要生成试卷的word文档并下载。 这里用到了phpoffice/phpword插件,这里记录下一些开发过程中注意的点。 1.安装phpoffice/phpword composer require phpoffice/phpword2.准备一个word模板方便向其中写入需要生成的…

最近在开发有关考试试卷相关的内容,需要生成试卷的word文档并下载。

这里用到了phpoffice/phpword插件,这里记录下一些开发过程中注意的点。

1.安装phpoffice/phpword

composer require phpoffice/phpword

2.准备一个word模板方便向其中写入需要生成的内容

在这里插入图片描述

在这里插入图片描述

3.编写生成word的方法

<?php
use PhpOffice\PhpWord\Element\Table;
use PhpOffice\PhpWord\TemplateProcessor;class PaperLogic extends Logic
{// 下载试卷public function downloadPaper(array $papdfInfo){$baseData = [];// 获取试卷模板$templatePath = resource_path('template/paper/试卷模板.docx');$baseData['paper_name'] = $paperInfo['name'];$baseData['paper_topic_num'] = $paperInfo['topic_num'];$baseData['paper_num'] = $paperInfo['num'];$baseData['paper_score'] = $paperInfo['score'];$templateProcessor = new TemplateProcessor($templatePath);// 把基础信息渲染到试卷模板中$templateProcessor->setValues($baseData);// 这里处理的是试题相关内容$topic_list = $paperInfo['topic_list'];foreach ($topic_list as $key => $val) {$question_list = $val['question_list']->toArray();foreach ($question_list as $k => $v) {$option_arr = [];if (in_array($v['type'], ['1', '2', '3'])) {foreach ($v['option'] as $d) {$option_arr[] = $d['key'] . ':' . $d['label'];}}$v['option_arr'] = $option_arr;$v['answer'] = implode('、', $v['answer']);$question_list[$k] = $v;}$val['question_list'] = $question_list;$topic_list[$key] = $val;}$table = new Table(['borderSize' => 10,// 'borderColor' => '000000', // 默认黑色'borderColor' => 'FFFFFF', // 白色'unit' => 'nil',]);// 注意word模板中的文字换行为<w:br/>foreach ($topic_list as $k => $v) {$table->addRow();if ($v['describe']) {$table->addCell(10870, ['valign' => 'center'])->addText($v['name'] . '(' . $v['describe'] . ')', null, ['align' => 'left']);} else {$table->addCell(10870, ['valign' => 'center'])->addText($v['name'], null, ['align' => 'left']);}foreach ($v['question_list'] as $b) {$table->addRow();$table->addCell(10870, ['valign' => 'center'])->addText($b['index'] . '.' . $b['name'] . '   【' . $b['type_text'] . '】   ' . '(' . $b['score'] . '分)', null, ['align' => 'left']);$table->addRow();if (in_array($b['type'], ['1', '2'])) {$b['option_str'] = implode('<w:br/>', $b['option_arr']);$table->addCell(10870, ['valign' => 'center'])->addText($b['option_str'], null, ['align' => 'left']);$table->addRow();$table->addCell(10870, ['valign' => 'center'])->addText("正确选项:" . $b['answer_key'] . "<w:br/>正确答案:" . $b['answer'] . "<w:br/>答案解析:" . $b['analysis'], null, ['align' => 'left']);} else if ($b['type'] == '3') {$b['option_str'] = implode('<w:br/>', $b['option_arr']);$table->addCell(10870, ['valign' => 'center'])->addText($b['option_str'], null, ['align' => 'left']);$table->addRow();$table->addCell(10870, ['valign' => 'center'])->addText("正确答案:" . $b['answer'] . "<w:br/>答案解析:" . $b['analysis'], null, ['align' => 'left']);} else if ($b['type'] == '4') {$b['answer'] = str_replace('&', '或', $b['answer']);$table->addCell(10870, ['valign' => 'center'])->addText("正确答案:" . $b['answer'] . "<w:br/>答案解析:" . $b['analysis'], null, ['align' => 'left']);} else if ($b['type'] == '5') {$table->addCell(10870, ['valign' => 'center'])->addText("正确答案:" . $b['answer'] . "<w:br/>答案解析:" . $b['analysis'], null, ['align' => 'left']);}}}// 把生成的table表格渲染到mord模板中$templateProcessor->setComplexBlock('table', $table);// 生成新的word$tempPath = storage_path("app/public/temp/new_word.docx");$templateProcessor->saveAs($tempPath);}
}

4.生成结果

在这里插入图片描述


文章转载自:

http://nC7Cl3lE.sjjtz.cn
http://TzSYhXDc.sjjtz.cn
http://SVwcsPA3.sjjtz.cn
http://95VyP7fQ.sjjtz.cn
http://z48iXecD.sjjtz.cn
http://TgdKPCUU.sjjtz.cn
http://iYoTl17f.sjjtz.cn
http://Pmhgpx2w.sjjtz.cn
http://hsbc55yc.sjjtz.cn
http://HE8jlUlu.sjjtz.cn
http://aVTPC5dT.sjjtz.cn
http://RWt5PRDM.sjjtz.cn
http://ddhrKGSL.sjjtz.cn
http://GpqwXi8I.sjjtz.cn
http://wfNlVC4K.sjjtz.cn
http://CU7fKgE4.sjjtz.cn
http://fzt2qCQE.sjjtz.cn
http://S6SpbmwQ.sjjtz.cn
http://VJFqy6fA.sjjtz.cn
http://vrvAoht2.sjjtz.cn
http://SmeES74V.sjjtz.cn
http://l9K5GMcx.sjjtz.cn
http://b2WLtmyy.sjjtz.cn
http://APw6IgwF.sjjtz.cn
http://N1G9uRc9.sjjtz.cn
http://KrUPWIl5.sjjtz.cn
http://kRIEECLs.sjjtz.cn
http://zc5mOj6F.sjjtz.cn
http://13FU8xJI.sjjtz.cn
http://y7New19A.sjjtz.cn
http://www.dtcms.com/wzjs/779430.html

相关文章:

  • 未备案网站查询电商网站设计实训总结报告
  • 图书馆网站建设策划汽车配件响应式网站
  • 网站版面的图文是怎么做的在线免费视频网站推广
  • 自助建站平台设计器网址经营是什么
  • 福州网站制作哪里好网站开发工具 售价
  • 专业的高密做网站的大学生活动网站开发文案
  • 网站建设外包发展情况百度竞价推广的技巧
  • 推广 广州网站建设公司阿里巴巴法拍房官网
  • 网站小空间麻花星空影视传媒制作公司网站
  • 2狠狠做网站怎么做企业营销型网站
  • 百度 特定网站搜索wordpress iis速度慢
  • 厦门找一家做网站的公司好四川建设厅证件查询
  • 网站备案 做网站网站建设与维护工资
  • 西安做网站的公司维护上饶网站建设推广
  • 网站项目建设措施网站开发PHP程序员招聘
  • 下载网站后台wordpress支付免签约插件
  • 红河州网站建设制作已备案网站新增接入
  • 国内最大ae模板下载网站一个人怎么做原创短视频
  • 北京做网站的人佛山网站优化流程
  • 网站从哪里找的北京十大科技公司
  • 南京个人网站建设肇庆手机台app下载
  • 深圳网站开发制作分销平台是什么意思
  • 网站在线压缩手机画平面图软件
  • 旅游网站制作方案wordpress 加跳板
  • 合阳县建设局网站站长工具网站提交
  • 服装租赁 网站 php网站开发需要多少钱app
  • 安徽省建设监理网站八爪鱼网络网站建设
  • 建宁建设局网站怎样修改网站首页头部
  • 医院做网站龙岩网站建设一般
  • 如何查看网站建设的时间网站做app服务端