zoukankan      html  css  js  c++  java
  • php使用phpword插件生成word文档

    php使用phpword插件生成word文档
    php使用phpword插件生成word文档,有需要的朋友可以参考参考。

            <?php 
             
            require_once '../libs/PHPWord/PHPWord.php'; 
            require_once '../libs/PHPWord/PHPWord/IOFactory.php'; 
            require_once '../../config.php'; 
            // require_once '../common/conn.php'; 
             
             
            // New Word Document 
            $PHPWord = new PHPWord(); 
             
            /**********文本格式的word text.php************/ 
            // New portrait section 
             
            //逗号 分割字符串 
            $arr = $_REQUEST['arr']; 
            $a = explode(',',$arr); 
            //echo $arr; 
            date_default_timezone_set("Asia/Shanghai");//设置一个时区 
            $tm=date('Y-m-d H:i:s'); 
            //exit($tm); 
            /**********前多日雨量*********/ 
            if(in_array('1', $a, TRUE)){ 
            $section = $PHPWord->createSection(); 
            $PHPWord->addFontStyle('rStyle', array('bold'=>false, 'italic'=>false,
             'size'=>16)); 
            $PHPWord->addParagraphStyle('pStyle', array('align'=>'center',
             'spaceAfter'=>100)); 
            $c = "前三日雨量报表"; 
            $section->addText($c, 'rStyle', 'pStyle'); 
             
            $styleTable = array('borderSize'=>6, 'borderColor'=>'006699',
             'cellMargin'=>80); 
            $styleFirstRow = array('borderBottomSize'=>18, 
            'borderBottomColor'=>'0000FF', 'bgColor'=>'66BBFF'); 
             
            // Define cell style arrays 
            $styleCell = array('valign'=>'center'); 
            // Define font style for first row 
            $fontStyle = array('bold'=>true, 'align'=>'center'); 
            //设置标题 
            $PHPWord->addFontStyle('rStyle', array('bold'=>true, 'italic'=>true,
             'size'=>16)); 
            $PHPWord->addParagraphStyle('pStyle', array('align'=>'center', 
            'spaceAfter'=>100)); 
             
            // Add table style 
            $PHPWord->addTableStyle('myOwnTableStyle', $styleTable, $styleFirstRow); 
             
            // Add table 
            $table = $section->addTable('myOwnTableStyle'); 
             
            // Add row设置行高 
            $table->addRow(500); 
             
            $table->addCell(2300, $styleCell)->addText('站码', $fontStyle); 
            $table->addCell(2300, $styleCell)->addText('站名', $fontStyle); 
            $table->addCell(2300, $styleCell)->addText('雨量', $fontStyle); 
            $table->addCell(2300, $styleCell)->addText('水文站监测类型', $fontStyle); 
             
            $conn = mssql_connect($config['mssql']['host'],$config['mssql']['user'],$config['mssql']['password']); 
            mssql_select_db($config['mssql']['dbname'],$conn); 
             
            $stm = date('Y-m-d H:i:s',strtotime('-3 days')); 
            $sql = "EXEC HNOW05_GETPPSPACE '','','".$stm."',1,1"; 
            $res=mssql_query($sql); 
             
            while($arr = mssql_fetch_array($res)){ 
            //echo $arr["STCD"]." 
            "; 
            $table->addRow(); 
            $table->addCell(2300)->addText($arr["STCD"]); 
            $table->addCell(2300)->addText($arr["STNM"]); 
            $table->addCell(2300)->addText($arr["P"]); 
            if($arr["STTP"] == 'MM'){ 
            $table->addCell(2300)->addText('气象站'); 
            }else if($arr["STTP"] == 'BB'){ 
            $table->addCell(2300)->addText('蒸发站'); 
            }else if($arr["STTP"] == 'DD'){ 
            $table->addCell(2300)->addText('堰闸水文站'); 
            }else if($arr["STTP"] == 'TT'){ 
            $table->addCell(2300)->addText('落潮位站'); 
            }else if($arr["STTP"] == 'DP'){ 
            $table->addCell(2300)->addText('泵站'); 
            }else if($arr["STTP"] == 'SS'){ 
            $table->addCell(2300)->addText('墒情站'); 
            }else if($arr["STTP"] == 'PP'){ 
            $table->addCell(2300)->addText('雨量站'); 
            }else if($arr["STTP"] == 'ZZ'){ 
            $table->addCell(2300)->addText('河道水位水文站'); 
            }else if($arr["STTP"] == 'RR'){ 
            $table->addCell(2300)->addText('水库水文站'); 
            }else if($arr["STTP"] == 'ZG'){ 
            $table->addCell(2300)->addText('地下水站'); 
            }else if($arr["STTP"] == 'ZB'){ 
            $table->addCell(2300)->addText('分洪水位站'); 
            } 
            } 
            $section->addTextBreak(2); 
            }else{ 
             
            } 
             
            /******地质灾害*******/ 
            if(in_array('3', $a, TRUE)){ 
            $section = $PHPWord->createSection(); 
            $PHPWord->addFontStyle('rStyle', array('bold'=>false, 'italic'=>false, 
            'size'=>16)); 
            $PHPWord->addParagraphStyle('pStyle', array('align'=>'center', 
            'spaceAfter'=>100)); 
            $c = "地质灾害"; 
            $section->addText($c, 'rStyle', 'pStyle'); 
             
            $content="根据市气象局未来24小时降雨预报和市水利局实时降雨数据,市国土资源局进行了地质灾害预报,请有关部门关 
             
            注 
             
            实时预警信息,做好地质灾害防范工作"; 
            $section->addText($content); 
            // Add image elements 
            $section->addImage("images/image001.jpg", array('width'=>600, 
            'height'=>480, 'align'=>'center')); 
            }else{ 
             
            } 
            // Save File 
            $fileName = "word报表".date("YmdHis"); 
            header("Content-type: application/vnd.ms-word"); 
            header("Content-Disposition:attachment;filename=".$fileName.".docx"); 
            header('Cache-Control: max-age=0'); 
            $objWriter = PHPWord_IOFactory::createWriter($PHPWord, 'Word2007'); 
            $objWriter->save('php://output'); 
            ?> 
            
    

      

  • 相关阅读:
    HTML5新特性,新的 Input 类型
    HTML5新特性,拖放(Drag 和 Drop)
    剑指 Offer 32
    剑指 Offer 28. 对称的二叉树
    993. 二叉树的堂兄弟节点
    897. 递增顺序查找树
    872. 叶子相似的树
    637. 二叉树的层平均值
    617. 合并二叉树
    559. N叉树的最大深度
  • 原文地址:https://www.cnblogs.com/relix/p/4987705.html
Copyright © 2011-2022 走看看