com クラスのコンストラクタ

# com::__construct

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

com::__construct — com クラスのコンストラクタ

### 説明

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

新しい com オブジェクトを構築します。

### パラメータ

`module_name`
  ロードするコンポーネントの名前を表す ProgID, ClassID または Moniker。 ProgID は通常、アプリケーションまたは DLL の名前で、その後にピリオドが続き、 オブジェクト名が続きます。e.g: `Word.Application` ClassID は、与えられたクラスを一意に識別するUUIDです。 Moniker は、URL スキームの概念に似た特別な名前付けのやり方で、 リソースを識別し、どのようにロードするかを指定します。 たとえば、Microsoft Word をロードし、 Word ドキュメントを表現するオブジェクトを取得するために、 フルパスをモジュール名として指定できます。 また、LDAP への ADSI インターフェイスを使う moniker として `LDAP:` が使えます。
`server_name`
  コンポーネントをロードし、実行する DCOM サーバー名。 `null` の場合、そのアプリケーションのデフォルトが使われ、実行されます。 デフォルトは通常はローカルマシン上で実行することですが、 管理者が異なるマシン上で起動するアプリケーションを設定するかもしれません。 server に `null` でない値を指定すると、PHP は com.allow_dcom php.ini 設定オプションが `true` でない限りオブジェクトのロードを拒否します。

  `server_name` が配列の場合、 次の要素が含まれるべきです(大文字小文字を区別します！)。 但し、これらは全てオプション(ユーザー名とパスワードは一緒に指定する必要があります) であることに注意してください。つまり、サーバーの設定を省略すると、 (既に述べたとおり)デフォルトのサーバーが使われ、オブジェクトのインスタンス化は com.allow_dcom php.ini ディレクティブによって影響を受けません。

  DCOM サーバー名
  キー | タイプ | 説明
  --- | --- | ---
  Server | string | サーバー名
  Username | string | 接続するユーザ名
  Password | string | `Username` のパスワード
  Domain | string | `server` のドメイン
  Flags | integer | 以下の定数をひとつ以上、論理ORで指定します: `CLSCTX_INPROC_SERVER`, `CLSCTX_INPROC_HANDLER`, `CLSCTX_LOCAL_SERVER`, `CLSCTX_REMOTE_SERVER`, `CLSCTX_SERVER` および `CLSCTX_ALL`。 指定されなかった場合のデフォルト値は `Server` も省略した場合は、 `CLSCTX_SERVER` ですが、 server を指定した場合は `CLSCTX_REMOTE_SERVER` です。 これらの定数の意味の詳細情報は、 Microsoft の CoCreateInstance のドキュメントも参照ください。 通常、それらを使わないことはないはずです。

`codepage`
  文字列をUnicode文字列その他に変換するために使うコードページを指定します。 PHP の文字列が この COM オブジェクトのメソッドとパラメータをやりとりする時に 常にこの変換は適用されます。このコードページは sticky です。 つまり、コードページはオブジェクトから返されるオブジェクトやバリアントに伝播するということです。 有効な値は `CP_ACP` (システムデフォルトの ANSI コードページを使う - このパラメータが省略された場合のデフォルト値), `CP_MACCP`, `CP_OEMCP`, `CP_SYMBOL`, `CP_THREAD_ACP` (現在実行中のスレッドのコードページ/ロケールを使う), `CP_UTF7` および `CP_UTF8` です。 コードページの数値も使えます。 コードページとその数値に関する詳細な情報は、Microsoft のドキュメントを参照ください。

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open