本文執行個體講述了php匯出產生word的方法。分享給大家供大家參考,具體如下:
PHP匯出word
(1)首先,預覽html頁面,樣本化對象,定義要匯出的資料
(2)點擊下載頁面,給id傳值(任何值均可,僅用於判斷),如果id有值,輸出緩衝檔案,儲存為word格式。
(3)點擊下載後,(如果是圖片的話,在儲存為word時要使用絕對路徑,這樣才可以在儲存的word中正常顯示)
(4)關閉緩衝輸出
Word_con.php 預覽要匯出的html檔案
<?phpif(@$_GET[id]!=''){ include('word_fun.php'); $word=new word();//樣本化對象 $word->start();//定義要儲存資料的開始}include('word_show.php'); if(@$_GET[id]!='') { $word->save('word_c.doc');//定義要儲存資料的結束,同時把資料儲存到word中 } if(@$_GET[id]=='') { //超連結中的x僅僅是為了傳一個值,確認下載,沒有其他的實際yi ?> <a href="#"><p onclick="window.location.href='word_con.php?id=x'">點擊跳到下載頁面</p></a> <?php }else{ echo "<a href=\"word_c.doc\">下載</a>"; }?>
Word_fun.php 匯出word相關函數
<?phpclass word{function start() //定義要儲存資料的開始{ ob_start(); //開始輸出緩衝 //設定產生word的格式 print '<html xmlns="urn:schemas-microsoft-comfficeffice" xmlns:w="urn:schemas-microsoft-comffice:word" xmlns="http://www.w3.org/TR/REC-html40">';}function save($path) //定義要儲存資料的結束,同時把資料儲存到word中 //所要儲存的資料必須限定在該類的start()和save()之間{print "</html>";$data=ob_get_contents(); //返回內部緩衝的內容 即把輸出變成字串ob_end_clean(); //結束輸出緩衝,清潔(擦除)輸出緩衝區並關閉輸出緩衝$this->wirtetoword($path,$data);}function wirtetoword($fn,$data) //將資料已二進位的形式儲存到word中{$fp=fopen($fn,"wb");fwrite($fp,$data);fclose($fp);}}?>
Word_show.php 串連資料庫,查詢相關資料
<?php include('conn.php'); //串連資料庫 $sq="select zf_content from zf where `zf_id`=137"; $sql=mysql_query($sq); while(($que=mysql_fetch_array($sql))!=false) { echo "<font color=\"red\">hahaahahha</font>"; echo $que['zf_content']; }?>
希望本文所述對大家PHP程式設計有所協助。
相關文章:
php使用phpword產生word文檔
在php程式中將網頁產生word文檔並提供下載的執行個體代碼
PHP產生word文檔的三種實現方式