# com::__construct

(PHP 4 > 4.1.0, PHP 5, PHP 7, PHP 8)

com::__construct — Constructeur de la classe com

### Description

public com::__construct(
string `$module_name`,
array|string|null `$server_name` = `null`,
int `$codepage` = `CP_ACP`,
string `$typelib` = ""
)

Construit un nouvel objet com.

### Liste de paramètres

`module_name`
  Peut être un ProgID, Class ID ou Moniker qui nomme le composant à charger. Un ProgID est typiquement le nom de l'application ou du DDL, suivit d'un point, suivit du nom de l'objet. Par exemple : `Word.Application`. Un Class ID est l'UUID qui identifie uniquement une classe donnée. Un Moniker est une forme spécial de nommage, similaire en concept à un schéma URL, qui identifie une ressource et spécifie comment il devrait être chargé? Pour un exemple, vous pouvez démarrer Word et récupérer un objet représentant un document word en spécifiant le chemin complet du document word en tant que nom de module, ou vous pouvez utiliser `LDAP:` en tant que Moniker pour utiliser l'interface ADSI à LDAP.
`server_name`
  Le nom du server DCOM sur lequel le composant devrait être chargé et exécuté. Si `null`, l'objet est exécuté en utilisant le défaut pour l'application. La valeur par défaut est typiquement d'exécuter sur la machine locale, cependant l'administrateur peut avoir configuré l'application d'être lancé sur une machine différente. Si une valeur non-`null` est spécifiée pour le serveur, PHP refusera de charger l'objet à moins que l'option com.allow_dcom php.ini option soit définie à `true`.

  Si `server_name` est un tableau, il devrait contenir les éléments suivant (sensible à la case!). À noter qu'ils sont tous optionnel (cependant vous devez définir l'Utilisateur et le Mot de Passe ensemble) ; si vous ommetez le paramètre Server, le serveur par défaut sera utilisé (comme dit ci-dessus), et l'instantiation de l'objet ne sera pas affecté par la php.ini directive com.allow_dcom.

  Nom de serveur DCOM
  Clé | Type | Description
  --- | --- | ---
  Server | chaîne de caractères | Le nom du serveur
  Username | chaîne de caractères | Le nom d'utilisateur pour se connecter en tant que.
  Password | chaîne de caractères | Le mot de passe pour `Username`.
  Domain | chaîne de caractères | Le domaine du `serveur`.
  Drapeaux | entier | Une ou plusieur des constantes suivantes, assemblé ensemble grâce au OU logique : `CLSCTX_INPROC_SERVER`, `CLSCTX_INPROC_HANDLER`, `CLSCTX_LOCAL_SERVER`, `CLSCTX_REMOTE_SERVER`, `CLSCTX_SERVER` et `CLSCTX_ALL`. La valeur par défaut si non définie ici est `CLSCTX_SERVER` si vous ommetez aussi `Server`, ou `CLSCTX_REMOTE_SERVER` si vous définissez un serveur. Vous devriez consultez la documentation de Microsoft pour CoCreateInstance pour plus d'information sur la signification de ces constantes ; vous devrez typiquement jamais les utiliser.

`codepage`
  Défini la codepage qui est utilisé pour convertir les chaîne de caractères en chaîne de caractères unicode et vice versa. La conversion est appliqué quand une chaîne de caractères PHP est passé en tant que paramètre ou retourné depuis une méthode de cet objet COM. La code page est "collante", ce qui signifie que ça sera propagé aux objets et variants retourné depuis l'objet. Les valeurs possibles sont : `CP_ACP` (utilise la code page ANSI système par défaut - par défaut si ce paramètre est omit), `CP_MACCP`, `CP_OEMCP`, `CP_SYMBOL`, `CP_THREAD_ACP` (utilise codepage/locale définie pour le thread en cours d'exécution ), `CP_UTF7` et `CP_UTF8`. Vous pouvez aussi utiliser le numéro pour une codepage donnée ; consultez la documentation de Microsoft pour plus de détails sur les codepages et leurs valeurs numériques.