2012-04-27 72 views
0

我遊蕩,如果任何人有決定PDF文檔是否實際上是一個PDF文檔的可靠方法,而且它沒有損壞。確定PDF文件是打開的,而不是腐敗

我產生我的系統上的報告,我想肯定是由其他系統返回的數據中包含的可打開的PDF文檔(並且該數據未損壞)。

目前,我基本上看字符串長度(PDF被存儲到一個變量,而不是一個物理文件)。 任何建議在PHP中這樣做會很好。

回答

3

如果你只是想確保該文件是PDF文件,而不檢查,這是沒有問題的一個完全完整的PDF文件,你可以閱讀前5個字節的文件和PDF文件,他們將正好等於字符串「%PDF-」

這是在Linux中file程序如何識別PDF文件。

但是,如果你想絕對相信有此文件中沒有任何錯誤,你可以運行處理整個文件的程序,看看該程序返回成功。

在Linux下,你可以使用ghostscript的(「GS」),以使PDF文檔的任何格式。

或者可以安裝Acrobat Reader軟件,並運行acroread作爲一個命令行程序將其轉換爲後記:

acroread -print -toPostScript [your_file.pdf] 

爲做這些,你將需要使用system PHP函數。要檢查項目的成功運行,你需要傳遞一個變量中的第二個參數system將接收的返回狀態。

+0

三江源。我確實在數據中看到了這一點,但它讓我的思緒滑落了! – Lock 2012-04-27 04:59:42