La manière la plus simple, et de loin, est d'utiliser .NET.
PHP -> Web ? Alors ASP.NET.
Le Framework .NET 3.0 et supérieur contient le namespace "System.IO.Package" avec des classes simplifiant la lecture et l'écriture de fichier OOXML.
Pour un exemple de création de document docx avec .NET:
http://msdn.microsoft.com/fr-fr/library/bb727306.aspx