PHP将数据库数据批量生成word文档
<?php
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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<xml><w:WordDocument><w:View>Print</w:View></xml>
</head><body>\';
}
function save($path){
echo "</body></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);
}
}
$con = mysqli_connect(\'localhost\',\'root\',\'\',\'word\');
mysqli_set_charset($con,"utf8");
$resutl = mysqli_query($con,\'select a.title,b.content content from pc_news a inner join pc_news_data b on a.id=b.id\');
$word=new Word();
while($res=mysqli_fetch_row($resutl)){
$word->start();
echo "<p align=\'center\' style=\'margin-top:20px;\'><strong>".$res[0]."</strong></p>";
echo $res[1];
$word->save("./docx/".iconv(\'UTF-8\',\'GB2312\',$res[0]).".docx");
@ob_flush();
header("Content-type:text/html;charset=utf-8");
}
?>