我必須在php中修改上傳的.doc或.docx文件。我Google搜索,但我只發現如何閱讀。我希望Word文件保持原樣,並在運行時將文本放在MS Word文件的底部。這怎麼可能有人知道請回復或給我的例子腳本。使用php編輯.doc或.docx文件
感謝,
我必須在php中修改上傳的.doc或.docx文件。我Google搜索,但我只發現如何閱讀。我希望Word文件保持原樣,並在運行時將文本放在MS Word文件的底部。這怎麼可能有人知道請回復或給我的例子腳本。使用php編輯.doc或.docx文件
感謝,
您可以使用PHPWord。
請嘗試查看http://www.tinybutstrong.com/,因爲它可以創建和編輯Word文檔,我們在郵件合併樣式中使用它來生成doc和pdf中的發票。
thnks回覆。但是我在http://www.tinybbstrong.com/找不到我的要求。你能舉個例子嗎? 謝謝, – user343695 2010-07-30 10:10:07
我是PHPWord的開發人員。您可以使用PHPWord_Template類打開現有的DOCX文件,然後用您的單個文本替換一些文本標記。
或者,您可以使用ZipArchive擴展名打開DOCX文件,然後讀取/寫入所需的每個xml文件(document.xml,header.xml,footer.xml,...)。這個方法只不過是PHPWord_Template類。 ;)
我對編輯.DOC或的.docx文件同樣的要求,使用PHP和我有這方面找到解決方法。 ,我已經寫在上面後:: http://www.onlinecode.org/update-docx-file-using-php/
if($zip_val->open($full_path) == true)
{
// In the Open XML Wordprocessing format content is stored.
// In the document.xml file located in the word directory.
$key_file_name = 'word/document.xml';
$message = $zip_val->getFromName($key_file_name);
$timestamp = date('d-M-Y H:i:s');
// this data Replace the placeholders with actual values
$message = str_replace("client_full_name", "onlinecode org", $message);
$message = str_replace("client_email_address", "[email protected]", $message);
$message = str_replace("date_today", $timestamp, $message);
$message = str_replace("client_website", "www.onlinecode.org", $message);
$message = str_replace("client_mobile_number", "+1999999999", $message);
//Replace the content with the new content created above.
$zip_val->addFromString($key_file_name, $message);
$zip_val->close();
}
這是完美的工作 – Dave 2017-11-04 07:56:59
謝謝答覆。 – user343695 2010-07-30 08:45:17
嗨,我已經使用PHPWORD,但它只創建.docx文件沒有修改。我想編輯現有的單詞文件。如果.doc中的文件那麼它將以.doc擴展名的形式出現,如果文件是.docx,那麼它將採用相同的格式。請回復,謝謝, – user343695 2010-07-30 08:48:02
在我下載的PHPWord代碼中,有一個用.docx模板替換變量(格式爲$ {varname})並將其另存爲新文件的示例。如果你有一個沒有varname標籤的文檔,它可能不會回答這個問題。我認爲PHPWord也不能使用.doc文件 - 可能需要COM類,或附加到任何給定的文件(http://php.net/manual/en/book.com.php) – 2011-11-08 04:08:15