本文實例講述了PHP創建word文檔的方法。分享給大家供大家參考,具體如下:
關於用PHP生成word,在網上找了很多資料,有調用COM組件生成的,有安裝PHP擴展生成的。都不免麻煩,以下為比較簡潔的一種方法,且可跨平台。
以下為詳細代碼:
class.word.php
<?php class Word{ function start(){ ob_start(); //打開輸出控制緩沖 echo '<html xmlns:o="urn:schemas-microsoft-com:office:office"'; echo 'xmlns:w="urn:schemas-microsoft-com:office:word"'; echo 'xmlns="http://www.w3.org/TR/REC-html40">'; } function save($path){ echo "</html>"; $data=ob_get_contents(); //返回輸出緩沖區的內容 ob_end_clean(); //清空緩沖區並關閉輸出緩沖 $this->writeFile($path,$data); //將緩沖區內容寫入word } function writeFile($fn,$data){ $fp=fopen($fn,"wb+"); fwrite($fp,$data); fclose($fp); } }
index.php
<?php include("class.word.php"); $word=new Word(); $word->start(); //以下內容會保存在WORD文件中,可以使用HTML標簽 ?> <h1>直接用php創建word文檔</h1> 作者:axgle <hr size=1> <p>如果你打開data.doc,看到了這裡的介紹,則說明word文檔創建成功了。 <p> 不論是在什麼操作系統下,使用本方法都可以直接用PHP生成word文檔。絕對不是吹牛! 就算是沒有安裝word,也能夠生成word文件。 當然了,生成的word文件可以用word,wps或者其他軟件打開。 <p> <b>使用方法:</b> <br> 首先用$word->start()表示要生成word文件了。 然後你可以輸出任何的HTML代碼,不論是從文件讀過來再寫到這裡, 還是直接在這裡輸出HTML,都沒有關系。 <p>等你輸出完畢後,用$word->save($path)方法,其中$path是你想 生成的word文件的名稱(可以給出完整的路徑).當你使用了$word->save() 方法後,這後面的任何輸出都和word文件沒有關系了,也就是說word的生成 工作就完成了。之後就和你平常使用php的方式一樣拉。隨便你輸出什麼東西, 都直接在浏覽器裡輸出,而不會寫到word裡面去。 <p>這是本人想到的一個很有意思的方法,它的實現方法出人意料的簡單,並且避免 了對windows環境的依賴。 <br>哈哈,很有意思吧?享受它吧! <hr size=1> <?php //以上內容會保存在WORD文件中 $word->save("data.doc");//保存word並且結束. //以下內容正常輸出在頁面文件中 header("Content-type:text/html;charset=utf-8"); echo 'data.doc生成成功,請到目錄下查看<br>'; ?>
更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。