COM 是 Component Object Model
的縮寫;它是一個物件導向層(以及相關的服務),建立在 DCE RPC(一個開放標準)之上,並定義了一種通用的呼叫慣例,使得以任何語言編寫的程式碼都能夠呼叫並與以任何其他語言編寫的程式碼進行互操作(前提是這些語言都支援 COM)。不僅程式碼可以用任何語言編寫,而且它甚至不必是同一個可執行檔的一部分;程式碼可以從 DLL 中載入,可以在同一台機器上執行的另一個程序中找到,或者,使用 DCOM(分散式 COM),可以在遠端機器上的另一個程序中找到,所有這些都不需要您的程式碼知道元件位於何處。
COM 的一個子集稱為 OLE Automation,它包含一組 COM 介面,允許與 COM 物件進行鬆散繫結,以便在執行時對它們進行內省和呼叫,而無需在編譯時了解物件如何工作。PHP COM 擴充功能利用 OLE Automation 介面,讓您可以從腳本中建立和呼叫相容的物件。從技術上講,這實際上應該稱為「PHP 的 OLE Automation 擴充功能
」,因為並非所有 COM 物件都與 OLE 相容。
現在,您為什麼要或應該使用 COM?COM 是在 Windows 平台上將應用程式和元件連結在一起的主要方法之一;使用 COM,您可以啟動 Microsoft Word,填寫文件範本,並將結果儲存為 Word 文件,然後將其傳送給您網站的訪客。您也可以使用 COM 來執行網路的管理任務,以及設定您的 IIS;這些只是最常見的用途;您可以使用 COM 做更多的事情。
此外,我們還支援使用 Microsoft 提供的 COM 互通性層來實例化和建立 .Net 組件。