php导出word格式文档的实例代码

发布时间:2020-08-16编辑:脚本学堂
本文介绍下,用php导出word格式文档的一例代码,供大家学习参考。

有时需要把网站中的文章导成word文档,而且要给文章的增加关键词链接,而且,只加一个关键词,比如关键词,php技术在文章中出现了3次,只对第一次出现添加连接。

以下是实现代码,主要是函数 str_replace_once($needle, $replace, $haystack),实现了只添加一次关键词链接的功能。
 

复制代码 代码示例:

<?php
/**
* 导出word格式文档
* 只添加一次关键词链接
* edit www.jb200.com
*/
//var_dump($_SERVER["HTTPS"]);die;
class word
{
function start()
{
ob_start();
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″>’;
}

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);
}
}
$db = mysql_connect(‘localhost’, ‘root’, ’123123′) or die(“Could not connect to database.”);//连接数据库

mysql_select_db(‘test’); //选择数据库
$sql = “select info.itemid,info.title,info.tag,con.content from csign_info_22 as info left join csign_info_data_22 as con on con.itemid = info.itemid”;

mysql_query(‘set names “utf8″‘);
$res=mysql_query($sql, $db);

while($info=mysql_fetch_array($res))
{
if($info['tag']){
$tagexp = explode(‘ ‘,$info['tag']);
foreach($tagexp as $k=>$v){
$tagstr .= ‘<a href=”http://www.jb200.com/invest/search-htm-kw-’.$v.’.html”>’.$v.’</a>&nbsp;&nbsp;’;

if(strpos($info['content'],$v)){
$info['content'] =str_replace_once($v,”<a href=http://www.jb200.com/invest/search-htm-kw-”.$v.”.html target=_blank >”.$v.”</a>”,$info['content']);
}
}
}
//echo $info['content'];die;
$html = ‘<p align=”center”>’.$info['title'].’</p><p>’.$info['content'].’</p>’;

if($tagstr){$html.= ‘<p>关键词:&nbsp’.$tagstr.’</p>’;}
$html .= ‘<p>本文由<a href=”http://www.jb200.com/”>脚本学堂</a>收集整理,更多信息请访问<a href=”http://www.jb200.com/”>Tiandone</a></p>’;
$word = new word();
$word->start();
//$html = “aaa”.$i;
$title = iconv(“UTF-8″,”GB2312″,$info['title']);
//echo $title;die;
$wordname = ‘E:/web/paypal/product/tiandone/’.$title.”.doc”;//存放目录
//echo $wordname;die;
echo $html;
$word->save($wordname);
ob_flush();//每次执行前刷新缓存
flush();
//print_r($info);die;
//die;
}
//只匹配一次关键词 重复的不匹配
function str_replace_once($needle, $replace, $haystack) {
// Looks for the first occurence of $needle in $haystack
// and replaces IT with $replace.
$pos = strpos($haystack, $needle);
if ($pos === false) {
// Nothing found
return $haystack;
}
return substr_replace($haystack, $replace, $pos, strlen($needle));
}
?>
 

以上就是今天php教程给出的代码,供大家学习研究之用。
学php就来脚本学堂吧。
 

您可能感兴趣的文章:

php生成excel或word文档的最简单方法
php生成word文档(读取数据库)
php生成word最简单的例子
php使用phpword生成word文档的例子
php生成word文件的简单范例
php 生成 导出word(可包含图片)的代码
php生成word的例子
php使用phpword生成word文档