COM

(no version information, might be only in CVS)

COM -- COM class

概要

$obj = new COM("server.object")

説明

COM クラスは、PHPスクリプトに統合された (D)COMコンポーネントのフ レームワークを提供します。

メソッド

string COM::COM ( string module_name [, string server_name [, int codepage]])

COM クラスのコンストラクタ。 パラメータ:

module_name

リクエストされたコンポーネントの名前またはクラスID。

server_name

コンポーネントを取得するDCOMサーバの名前。 NULL の場合には、 localhost が指定されたと仮定されます。 DCOMを使用するためには、 php.ini com.allow_dcom TRUE に設定してある必要があります。

codepage

PHPの文字列のUNICODE文字列への変換およびその逆変換で使用され るコードページを指定します。使用可能な値は、 CP_ACP , CP_MACCP , CP_OEMCP , CP_SYMBOL , CP_THREAD_ACP , CP_UTF7 , CP_UTF8 で す。



例 1COM の例 (1)

// Wordを起動
$word = new COM("word.application") or die("Unable to instanciate
Word");
print "Loaded Word, version {$word- Version}\n";

// 前面に表示
$word- Visible = 1;

// 空のドキュメントをオープン
$word- Documents- Add();

// 何か単純な作業をする
$word- Selection- TypeText("This is a test...");
$word- Documents[1]- SaveAs("Useless test.doc");

// Wordを閉じる
$word- Quit();

// オブジェクトを開放
$word- Release();
$word = null;


例 2COM の例 (2)

$conn = new COM("ADODB.Connection") or die("Cannot start ADO");
$conn- Open("Provider=SQLOLEDB; Data Source=localhost;
Initial Catalog=database; User ID=user; Password=password");

$rs = $conn- Execute("SELECT * FROM sometable");    // Recordset

$num_columns = $rs- Fields- Count();
echo $num_columns . "\n";

for ($i=0; $i   $num_columns; $i++)
{
    $fld[$i] = $rs- Fields($i);
}

$rowcount = 0;
while (!$rs- EOF)
{
    for ($i=0; $i   $num_columns; $i++)
    {
        echo $fld[$i]- value . "\t";
    }
    echo "\n";
    $rowcount++;            // 行カウンタを増やす
    $rs- MoveNext();
}

$rs- Close();
$conn- Close();

$rs- Release();
$conn- Release();

$rs = null;
$conn = null;