com::__construct
(PHP 4 > 4.1.0, PHP 5, PHP 7)
com::__construct — com クラスのコンストラクタ
説明
public 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 は [[Php/docs/com.configuration#ini.com|]] 設定オプションがtrue
でない限りオブジェクトのロードを拒否します。server_name
が配列の場合、 次の要素が含まれるべきです(大文字小文字を区別します!)。 但し、これらは全てオプション(ユーザー名とパスワードは一緒に指定する必要があります) であることに注意してください。つまり、サーバの設定を省略すると、 (既に述べたとおり)デフォルトのサーバが使われ、オブジェクトのインスタンス化は [[Php/docs/com.configuration#ini.com|]] ディレクティブによって影響を受けません。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 のドキュメントを参照してください。