PHP生成word文档的三种实现方式
最近工作遇到关于生成word的问题 现在总结一下生成word的三种方法。 btw:好像只要是标题带PHP的貌似点击量都不是很高(哥哥我标题还是带上PHP了),不知道为什么,估计博客园上net技术大牛比较多吧,如果把java,.net,php比作程序员的女友,那么java是Oracle门下的大家闺秀,.net微软旗下的名门望族,PHP则是草根门下的山村野姑,这让我等PHP草民闷骚男情何以堪情何以堪。。牢骚发完了,正式写吧 PHP生成word原理
具体实现:利用windows下面的 com组件原理:com作为PHP的一个扩展类,安装过office的服务器会自动调用word.application的com,可以自动生成文档,PHP官方文档手册: 使用官方实例: Version}n";
//bring it to front //open an empty document //do some weird stuff //closing word //free the object 个人建议:com实例后的方法都需要查找官方文档才知道什么意思,编辑器没有代码提示,非常不方便,另外这个效率也不是很高,不推荐使用 利用PHP将内容写入doc文件之中这个方法又可以分为两种方法
生成mht格式(和HTML很相似)写入word/i','$1',$content); //去掉链接
$images = array(); for ( $i=0;$i<count($images);$i++) return $mht->GetFile(); 这个函数的主要功能其实就是分析HTML代码中的所有图片地址,并且依次下载下来。获取到了图片的内容以后,调用MhtFileMaker类,将图片添加到mht文件中。具体的添加细节,封装在MhtFileMaker类中了。 使用方法:远程调用 $content = file_get_contents($url);
$fileContent = getWordDocument($content,"//www.jb51.cc/Music/etc/"); 其中,$content变量应该是HTML源代码,后面的链接应该是能填补HTML代码中图片相对路径的URL地址 本地生成调用: 注意,在使用这个函数之前,您需要先包含类MhtFileMaker,这个类可以帮助我们生成Mht文档。 class MhtFileMaker{ var $config = array(); var $headers = array(); var $headers_exists = array(); var $files = array(); var $boundary; var $dir_base; var $page_first; function MhtFile($config = array()){ } function SetHeader($header){ function SetFrom($from){ function SetSubject($subject){ function SetDate($date = NULL,$istimestamp = FALSE){ function SetBoundary($boundary = NULL){ function SetBaseDir($dir){ function SetFirstPage($filename){ function AutoAddFiles(){ function AddDir($dir){ function AddFile($filename,$filepath = NULL,$encoding = NULL){ function AddContents($filepath,$encoding = NULL){ function CheckHeaders(){ function CheckFiles(){ (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |