欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php生成word两种方法_PHP教程

程序员文章站 2024-01-25 16:43:46
...
php教程生成word两种方法

1.正常的touch创建word

2.fopen 打开word

3.fwrite 写入word 并保存

这样会出现一个问题 如果写入的东西里面含有html代码的话,它将直接写入word而不是 排版了

这个问题 需要在输出html 代码头部加一段代码

$headert='

xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/tr/rec-html40">';
$footer="";

比如你的内容是$text;

那么写入的时候$text=$header.$text.$footer;

这样的话fck里面的东西就能按排版的样式输出了!


方法一

$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->agesetup->rightmargin ='3"';

//设置字体 这
$word->selection->font->name ='helvetica';

//设置字号
$word->selection->font->size = 8;

//设置颜色
$word->selection->font->colorindex= 13; //wddarkred= 13

//输出到文档
$word->selection->typetext("hello world ");
$range = $word->activedocument->range(0,0);
$table_t =$word->activedocument->tables->add($range,3,4);
$table_t->cell(1,2)->range->insertafter('aaa');
//保存
//$word->sections->add(1);
$word->documents[1]->saveas(dirname(__file__)."/create_test.doc");

//退出
$word->quit();

?>

方法二

class word
{
function start()
{
ob_start();
print'

xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/tr/rec-html40">';
}
function save($path)
{
print "";
$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=new word;
$word->start();
echo $cout;
$wordname="word/".time().".doc";
$word->save($wordname);//保存word并且结束


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/444807.htmlTechArticlephp教程生成word两种方法 1.正常的touch创建word 2.fopen 打开word 3.fwrite 写入word 并保存 这样会出现一个问题 如果写入的东西里面含有html代码的...