COM es un acrónimo para Component Object Model;
   es una capa orientada a objetos (y servicios asociados) sobre
   DCE RPC (un estándar libre) que
   define una convención de nomenclatura común que permite que el código escrito en
   cualquier lenguaje se comunique con el código escrito en otro
   lenguaje, siempre que ambos lenguajes sean compatibles con COM.
   Los códigos no necesitan ser parte del mismo ejecutable. El código puede
   ser cargado desde una DLL, encontrado en otro proceso que se ejecuta en el mismo
   servidor, o, con DCOM (Distributed COM), encontrado en una máquina remota, sin que
   su código necesite saber dónde se encuentra.
  
   Hay una parte de COM conocida como OLE Automation que incluye un conjunto de
   interfaces COM que permiten desvincularse de los objetos COM, para que puedan ser
   descubiertos y llamados en tiempo de ejecución sin saber en el momento de la compilación
   cómo funciona el objeto. La extensión COM de PHP utiliza las interfaces OLE Automation
   para permitir la creación y llamada de objetos compatibles desde sus scripts. Técnicamente,
   esto debería llamarse "la Extensión OLE Automation para PHP",
   ya que no todos los objetos COM son necesariamente compatibles con OLE.
  
Ahora, ¿por qué se debería utilizar COM? COM es uno de los métodos más utilizados para hacer que las aplicaciones y componentes se comuniquen en las plataformas Windows. Utilizando COM, se puede abrir un documento de Microsoft Word, llenar un fichero de plantilla y guardarlo para enviarlo por correo a su visitante. También se puede utilizar COM para realizar tareas administrativas en su red y configurar IIS; estos son solo los usos más comunes, se puede hacer mucho más con COM.
Además, se soporta la instanciación y creación de ensamblados .Net utilizando una capa de interoperabilidad COM proporcionada por Microsoft.
