php ppt read_php怎么读取ppt文字内容并在浏览器中显示出来?
具體代碼麻煩我就不寫了,可以提供給你一個思路:首先要求服務器上安裝wps或者microsoft powerpoint軟件,然后通過api接口來訪問并讀取ppt,最后將其發(fā)送到頁面。當然你不能每次等別人訪問的時候再去讀取,不然太慢。。這個辦法比較簡便,如果你想直接讀取,則需要詳細了解ppt文件的格式。
追問
new com('powerpoint.application')這個是api接口嗎??我是想讀取ppt的文字后寫入數(shù)據(jù)庫的我在網(wǎng)上找了很久,始終沒有找到讀取ppt的php代碼讀取word的就有,但是ppt似乎比word要復雜很多
追答
是,但我只寫過word和excel的api,對ppt的不了解。沒有php代碼沒關系,我給個ppt的api手冊給你。其中的代碼是以vba為例,但vba的代碼都是通俗易懂的,即使你沒有學過。嗯,貌似樓下那個更簡單些。但實現(xiàn)原理都一樣。
本回答由網(wǎng)友推薦
用 PHPPowerPoint 庫來實現(xiàn)讀取 ppt。https://github.com/PHPOffice/PHPPowerPoint
追問
這個可以讀取ppt而不是pptx的么?呵呵全英文的看不懂
追答
支持 pptx 的
<?php /* * 必須將 php.ini 中的 com.allow_dcom 設為 TRUE */ function php_Word($wordname,$htmlname,$content) { //獲取鏈接地址 $url = $_SERVER['HTTP_HOST']; $url = "; $url = $url.$_SERVER['PHP_SELF']; $url = dirname($url)."/"; //建立一個指向新COM組件的索引 $word = new COM("word.application") or die("Unable to instanciate Word"); //顯示目前正在使用的Word的版本號 echo "Loading Word, v. {$word->Version}"; //把它的可見性設置為0(假),如果要使它在最前端打開,使用1(真) $word->Visible = 1; //---------------------------------讀取Word內(nèi)容操作 START----------------------------------------- //打開一個word文檔 $word->Documents->Open($url.$wordname); //將filename.doc轉(zhuǎn)換為html格式,并保存為html文件 $word->Documents[1]->SaveAs(dirname(__FILE__)."/".$htmlname,8); //獲取htm文件內(nèi)容并輸出到頁面 (文本的樣式不會丟失) $content = file_get_contents($url.$htmlname); echo $content; //獲取word文檔內(nèi)容并輸出到頁面(文本的原樣式已丟失) $content= $word->ActiveDocument->content->Text; echo $content; //關閉與COM組件之間的連接 $word->Documents->close(true); $word->Quit(); $word = null; unset($word); //---------------------------------新建立Word文檔操作 START-------------------------------------- //建立一個空的word文檔 $word->Documents->Add(); //寫入內(nèi)容到新建word $word->Selection->TypeText("$content"); //保存新建的word文檔 $word->Documents[1]->SaveAs(dirname(__FILE__)."/".$wordname); //關閉與COM組件之間的連接 $word->Quit(); } php_Word("tesw.doc","filename.html","寫入word的內(nèi)容");?>
本回答由提問者推薦
網(wǎng)頁中直接顯示W(wǎng)ORD文檔需要瀏覽器有控件支持控件可以百度一下,NKO OFFICE控件 不過是收費的,也有注冊版的低版本的控件可以直接原生顯示W(wǎng)ORD文檔內(nèi)容沒什么特別方法,因為早期word格式并不公開,所以除了調(diào)用office組件否則無法正確讀取數(shù)據(jù)??尚械姆绞绞菍ord文檔后臺轉(zhuǎn)換為pdf或者其他格式,我印象中網(wǎng)上有php調(diào)用后臺程序?qū)oc轉(zhuǎn)換為pdf,前臺用flash顯示的參考代碼,可以搜搜看,其實就是類似百度文庫的那種顯示方式。
傳說中的phpword根本就不能讀word文件,只能寫,寫完后可保存word,pdf.html等格式,網(wǎng)上一大把教程,都對讀取避而不談,都是一知半解粘貼過來騙積分的,就連官網(wǎng)上的手冊也沒有讀的內(nèi)容,想預覽word,老老實實的在服務器上裝插件吧。。。
網(wǎng)頁中直接顯示W(wǎng)ORD文檔需要瀏覽器有控件支持控件可以百度一下,NKO OFFICE控件 不過是收費的,也有注冊版的低版本的控件可以直接原生顯示W(wǎng)ORD文檔內(nèi)容沒什么特別方法,因為早期word格式并不公開,所以除了調(diào)用office組件否則無法正確讀取數(shù)據(jù)。可行的方式是將word文檔后臺轉(zhuǎn)換為pdf或者其他格式,我印象中網(wǎng)上有php調(diào)用后臺程序?qū)oc轉(zhuǎn)換為pdf,前臺用flash顯示的參考代碼,可以搜搜看,其實就是類似百度文庫的那種顯示方式。
本回答被網(wǎng)友采納
目前程序編譯語言有很多種,其中php是最為常見的一種編程語言。php讀取word文檔是很多朋友都想了解的,下面就由達內(nèi)的老師為大家介紹一下。 <?php /* * 必須將 php.ini 中的 com.allow_dcom 設為 TRUE */ function php_Word($wordname,$htmlname,$content) { //獲取鏈接地址 $url = $_SERVER['HTTP_HOST']; $url = "; $url = $url.$_SERVER['PHP_SELF']; $url = dirname($url)."/"; //建立一個指向新COM組件的索引 $word = new COM("word.application") or die("Unable to instanciate Word"); //顯示目前正在使用的Word的版本號 echo "Loading Word, v. {$word->Version}"; //把它的可見性設置為0(假),如果要使它在最前端打開,使用1(真) $word->Visible = 1; //---------------------------------讀取Word內(nèi)容操作 START----------------------------------------- //打開一個word文檔 $word->Documents->Open($url.$wordname); //將filename.doc轉(zhuǎn)換為html格式,并保存為html文件 $word->Documents[1]->SaveAs(dirname(__FILE__)."/".$htmlname,8); //獲取htm文件內(nèi)容并輸出到頁面 (文本的樣式不會丟失) $content = file_get_contents($url.$htmlname); echo $content; //獲取word文檔內(nèi)容并輸出到頁面(文本的原樣式已丟失) $content= $word->ActiveDocument->content->Text; echo $content; //關閉與COM組件之間的連接 $word->Documents->close(true); $word->Quit(); $word = null; unset($word); //---------------------------------新建立Word文檔操作 START-------------------------------------- //建立一個空的word文檔 $word->Documents->Add(); //寫入內(nèi)容到新建word $word->Selection->TypeText("$content"); //保存新建的word文檔 $word->Documents[1]->SaveAs(dirname(__FILE__)."/".$wordname); //關閉與COM組件之間的連接 $word->Quit(); } php_Word("tesw.doc","filename.html","寫入word的內(nèi)容");?>
你下載了phpword,測試一下其中的demo有讀文件的demo看了效果你就會知道使用phpword都讀取word的效果都比較差,所以,你還想怎樣呢?如果你只是想把內(nèi)容顯示給用戶看的話,可以考慮百度的文檔服務:https://cloud.baidu.com/product/doc.html
//?打開這個文件讀取內(nèi)容$file?=?'word.doc';$f?=?fopen($file,?'r');$content?=?fread($f,?filesize($file));echo?$content;??//?可能會亂碼
可以使用微軟的在線接口,不過速度有點慢:http://view.officeapps.live.com/op/view.aspx?src=我們現(xiàn)在做的方法是將文檔轉(zhuǎn)換成pdf,然后使用pdf.js這個插件來閱讀
追問
主要是用于給 客服 培訓資料 在線比較方便 !
追答
如果是這樣的話 建議直接放在百度網(wǎng)盤,然后共享,一樣可以在線預覽
本回答由網(wǎng)友推薦
總結
以上是生活随笔為你收集整理的php ppt read_php怎么读取ppt文字内容并在浏览器中显示出来?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: adcclk最大_TMS320F28xx
- 下一篇: 为什么苹果内购总是失败_苹果官网送货流程