用php生成word文档
一、用windows里面自带的com,然后用php生成word文档
<?php $word= new COM("word.application") or die("Unable to create Word document");
print "Loaded Word, version {$word->Version}\n";
$word->Visible = 0;
$word->Documents->Add(); //设置边距
$word->Selection->pageSetup->LeftMargin = '3';
$word->Selection->pageSetup->RightMargin = '3'; //设置字体
$word->Selection->Font->Name = 'Helvetica'; //设置字号
$word->Selection->Font->Size = 8; //设置颜色
$word->Selection->Font->ColorIndex= 13; //wdDarkRed = 13
//输出到文档
$word->Selection->TypeText("string string string string string string ");
$range = $word->ActiveDocument->Range(0, 0);
$table_t = $word->ActiveDocument->Tables->Add($range,3,4); //生成3行4列
$table_t->Cell(1, 2)->Range->InsertAfter('aaa'); //向第1行第2列插入aaa
//保存 www.jbxue.com
//$word->Sections->Add(1);
$word->Documents[1]->SaveAs(dirname(__FILE__)."/create_test.doc"); //退出
$word->quit();
?>
二、用php类直接生成word文档
<?php
class word
{
function start()
{
ob_start();
print’<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">’;
}
function save($path)
{
print "</html>";
$data = ob_get_contents();
ob_end_clean();
$this->wirtefile ($path,$data);
}
function wirtefile ($fn,$data)
{
$fp=fopen($fn,"wb");
fwrite($fp,$data);
fclose($fp);
}
}
/*-------word class End-------*/
$word=new word;
$word->start();
echo $cout;
$wordname="word/".time().".doc";
$word->save($wordname);//保存word并且结束.
?>
<?php
/**
* php生成word
*/
require_once("../../config/sys_config.php"); //配置文件
require_once("../../include/db_class.php");
header("Content-type: text/html; charset=$page_Code"); //页面编码
header("Content-Type:application/msword");
header("Content-Disposition:attachment;filename=".mb_convert_encoding("客户资料报表","GBK","$page_Code").".doc");
header("Pragma:no-cache");
header("Expires:0");
$usersId = intval( $_GET['uid'] ); //用户ID
?>
<html>
<meta http-equiv=Content-Type content="text/html; charset=<?php echo $page_Code; ?>">
<style media="print" type="text/css">
<!--
body {
margin-left: 0cm;
margin-top: 0cm;
margin-right: 0cm;
margin-bottom: 0cm;
}
-->
</style>
<body>
<table width="100%" style='border-collapse:collapse;'>
<tr>
<td width='24%' bgcolor='#CCCCCC' style='border:1px solid #000000;font-size:12px;'>客户名称</td>
<td width='13%' bgcolor='#CCCCCC' style='border:1px solid #000000;font-size:12px;'>电话号码</td>
<td width='32%' bgcolor="#CCCCCC" style='border:1px solid #000000;font-size:12px;'>客户地址</td>
<td width='11%' bgcolor="#CCCCCC" style='border:1px solid #000000;font-size:12px;'>添加日期</td>
<td width='20%' bgcolor="#CCCCCC" style='border:1px solid #000000;font-size:12px;'>客户备注备注</td>
</tr>
<?php
$sqlstr = "select * from clients where usersId=$usersId order by clientsId desc";
$rows = $db -> select($sqlstr);
$num = count($rows); //客户总数
for( $i = 0; $i < $num; $i++ )
{
?>
<tr>
<td style='border:1px solid #000000;font-size:12px;'><?php echo $rows[$i][clientsName]?></td>
<td style='border:1px solid #000000;font-size:12px;'><?php echo $rows[$i][clientsPhone]?></td>
<td style='border:1px solid #000000;font-size:12px;'><?php echo $rows[$i][clientsAddress]?></td>
<td style='border:1px solid #000000;font-size:12px;'><?php echo $rows[$i][clientsTime]?></td>
<td style='border:1px solid #000000;font-size:12px;'> </td>
</tr>
<?php
}
?>
</table>
</body>
</html>
用php生成word文档的更多相关文章
- Aspose.Words简单生成word文档
Aspose.Words简单生成word文档 Aspose.Words.Document doc = new Aspose.Words.Document(); Aspose.Words.Documen ...
- ASP.NET生成WORD文档,服务器部署注意事项
网上转的,留查备用,我服务器装的office2007所以修改的是Microsoft Office word97 - 2003 文档这一个. ASP.NET生成WORD文档服务器部署注意事项 1.Asp ...
- POI生成WORD文档
h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h ...
- PowerDesigner将PDM导出生成WORD文档
PowerDesigner将PDM导出生成WORD文档 环境 PowerDesigner15 1.点击Report Temlates 制作模板 2.如果没有模板,单击New图标创建.有直接双击进入. ...
- velocity模板技术生成word文档
本文介绍採用velocity技术在Java中生成word文档的方法. 1.新建一个word文档,编辑内容例如以下: 2.将上述word文档另存为htm格式的文件 3.新建一个Java Project项 ...
- 使用C#动态生成Word文档/Excel文档的程序测试通过后,部署到IIS服务器上,不能正常使用的问题解决方案
使用C#动态生成Word文档/Excel文档的程序功能调试.测试通过后,部署到服务器上,不能正常使用的问题解决方案: 原因: 可能asp.net程序或iis访问excel组件时权限不够(Ps:Syst ...
- c#生成word文档
参考:http://blog.163.com/zhouchunping_99/blog/static/7837998820085114394716/ 生成word文档 生成word文档 view pl ...
- 将HTML导出生成word文档
前言: 项目开发中遇到了需要将HTML页面的内容导出为一个word文档,所以有了这边随笔. 当然,项目开发又时间有点紧迫,第一时间想到的是用插件,所以百度了下.下面就介绍两个导出word文档的方法. ...
- POI生成word文档完整案例及讲解
一,网上的API讲解 其实POI的生成Word文档的规则就是先把获取到的数据转成xml格式的数据,然后通过xpath解析表单式的应用取值,判断等等,然后在把取到的值放到word文档中,最后在输出来. ...
随机推荐
- Javascript中那些偏门的知识
1.(functiong(){})() 和 (function(){}())有细微差别,()是强制运算符,第一种写法强制返回函数本身,然后调用:第二种写法是强制返回函数执行的结果. 2.json格式 ...
- javascript关闭浏览器窗口
var opened=window.open('about:blank','_self'); opened.close(); window.open 不被阻止 .open('_blank') 然后 t ...
- C#中Strings VS. StringBuilder
string mappingHandler = String.Format(@"""[name='BTSHTTPReceiveModule',path='BTSHTTPR ...
- Class File Editor: Source not found
问题: 找不到需要的 *.java 文件就会报以下错误. 解决方案: 1. Window -> preferences -> Java -> Installed JREs 2. 选择 ...
- HTTPS证书制作
openssl 安装可参照之前文章 1.mkdir /etc/ssl/xip.ioopenssl genrsa -out /etc/ssl/xip.io/xip.io.key 1024openssl ...
- 关于java实现同步的方法
什么是线程同步? 当使用多个线程来访问同一个数据时,非常容易出现线程安全问题(比如多个线程都在操作同一数据导致数据不一致),所以我们用同步机制来解决这些问题. 实现同步机制有两个方法: 1. 同步代码 ...
- 【区间覆盖问题】uva 10020 - Minimal coverage
可以说是区间覆盖问题的例题... Note: 区间包含+排序扫描: 要求覆盖区间[s, t]; 1.把各区间按照Left从小到大排序,如果区间1的起点大于s,则无解(因为其他区间的左起点更大):否则选 ...
- nyoj 86 找球号(一)
找球号(一) 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 在某一国度里流行着一种游戏.游戏规则为:在一堆球中,每个球上都有一个整数编号i(0& ...
- 浅谈用java解析xml文档(一)
关于xml本身的语法及使用的环境不多说了,网上有很多规则, 然对xml文档进行解析,一般分为四种解析方式,基于java官方文档的Dom 和Sax解析,还有就是基于 第三方jar包的 Jdom 和 Do ...
- asp搜索两个以上的词的原理
通常会在许多网站上进行搜索一些内容,要输入两个或两个以上的词,它的原理是这样的: 假设在搜索框search中输入:“asp php” 先得到输入框中的内容:search=request("s ...