在这篇文章中主要解决两个问题:
1:在php中如何把html中的内容生成到word文档中
2:php把html中的内容生成到word文档中时,不居中显示问题,即会默认按照web视图进行显示。
3:php把html中的内容生成到word文档中时,相关样式不兼容问题
正文:
代码如下 | 复制代码 |
echo '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <xml><w:WordDocument><w:View>Print</w:View></xml> <script src="includes/js/ztree/js/jquery-1.4.4.min.js" type="text/javascript"></script> </head>'; echo '<body><table class="table_dayin"> ob_start(); //打开缓冲区 if (strpos($_SERVER["HTTP_USER_AGENT"],'MSIE')) { |
注:以上代码部分提供了在php程序文件中生成内容到word文档中并提供下载功能。
例子
代码如下 | 复制代码 |
<?php //初始化session session_start(); // 包含数据库连接文件和头文件 ?> <html> <head> <title>试卷生成</title> <link href="css/style.css" rel="stylesheet" type="text/css"> </head> <? include('head.php'); require ('dbconnect.php'); ?> <?PHP $juge=0; for($i=1;($i<100);$i++) { $a=$i; if(isset($_POST[$a])) { if($juge==0) $sql.=" id=".$_POST[$a]; else $sql.=" or id=".$_POST[$a]; $juge=1; } } if($sql!="") { $sql="SELECT * FROM test WHERE".$sql; $result_array=array(); //返回数组 $i=0; //数组下标 $query_result=@mysql_query($sql,$conn); while($row=@mysql_fetch_object($query_result)) { $i++; $cout.=$i." "; $cout.="题目难度:".$row->difficulty."<br>"; $cout.=" ".$row->content."<br><br>"; }//while ?> function save($path) print "</html>"; ob_end_clean(); |