首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 4 Windows COM 元件操作:啟動 Word、寫入文字、存檔完整範例

     編輯:PHP 相關知識

前置條件

  • Windows 作業系統 (COM 僅限 Windows)。
  • 已安裝 Microsoft Office (Word)。
  • PHP 設定 com.allow_dcom = true (php.ini)。
  • 執行 PHP 的使用者需有啟動 Word 的權限 (IIS 需設定應用程式集區身分識別)。

基本範例

Version}
"; $word->Visible = 1; // 顯示視窗 (除錯用),生產設 0 $word->Documents->Add(); // 新增文件 $word->Selection->TypeText("這是 PHP 透過 COM 寫入的測試文字。\n第二行。"); $word->Documents[1]->SaveAs("C:\\temp\\test_com_php.doc"); $word->Quit(); echo "文件已儲存。"; } catch (com_exception $e) { echo "COM 錯誤: " . $e->getMessage(); } ?>

常用 Word COM 操作速查

安全與穩定性警示

  1. 記憶體洩漏:COM 物件必須確實 Quit() 並釋放變數 unset($word),否則 Word 進程殘留佔用資源。
  2. 權限問題:IIS/IUSR 預設無桌面互動權限,Word 會彈視窗卡住。解法:應用程式集區身分設為有桌面權限的使用者,或用任務排程器觸發獨立腳本。
  3. 非同步處理:Web 請求中直接操作 COM 會阻塞執行緒,建議寫入佇列 (資料庫/Redis),由背景 Worker (Windows 排程/服務) 處理。
  4. 替代方案:純 PHP 產生 docx (PHPWord)、轉 HTML 列印、LibreOffice headless 轉檔,避免 COM 依賴。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
操作程式碼
開啟現有文件$word->Documents->Open("C:\\path\\file.doc")
游標移動$word->Selection->MoveRight(wdCharacter, 5)
插入換頁$word->Selection->InsertBreak(wdPageBreak)
設定字型$word->Selection->Font->Name = "微軟正黑體"; $word->Selection->Font->Size = 14;
匯出 PDF$word->ActiveDocument->SaveAs("file.pdf", 17); // wdFormatPDF
郵件合併$doc->MailMerge->OpenDataSource(...); $doc->MailMerge->Execute();