您的位置:首页 > 编程语言 > PHP开发

PHP由HTML生成Word文档及编码转换

2018-01-03 11:15 543 查看
Word类源代码:

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){
echo '</html>';
$data=ob_get_cotents();
ob_end_clean();
$this->writeFile($path, $data);
}

function writeFile($path, $data){
$fp=fopen($path, 'wb');
fwrite($fp, $data);
fclose($fp);
}
}


使用方法:

$html='<html><table><tr><td> </td><td> </td></tr><tr><td> </td><td> </td></tr></table>';
$word=new Word();
$word->start();
$wordname=iconv('UTF-8', 'GB2312//IGNORE', '<filename>'.'doc');// 添加//IGNORE参数忽略转换错误,以防止因转换失败而导致脚本终止运行
$path='<PATH/TO/SAVE>'.$wordname;//最好是绝对路径。这里注意:1.确保写入目录具有可写入权限;2.路径和文件名中不得包含/\*?"<>|等非法字符
echo iconv('UTF-8', 'GB2312//IGNORE', $html);
$word->save();
ob_flush();
flush();


注:生成带图片的Word文档时,图片src须使用绝对路径
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php word utf-8-gbk