Учебник РНР
Назад Вперёд

COM

(unknown)

COM - класс COM.

Синопсис

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

Описание

Класс COM предоставляет каркас для интегрирования (D)COM-компонентов в ваши php-скрипты.

Методы

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

Конструктор класса COM. Параметры:

module_name

имя или class-id запрашиваемого компонента.

server_name

имя DCOM-сервера, с которого компонент должен быть получен. Если NULL, принимается localhost. Чтобы разрешить DCOM, com.allow_dcom должен быть установлен в TRUE в файле php.ini.

codepage

специфицирует кодовую страницу, используемую при конвертации php-строк в unicode-строки и обратно. Возможные значения: CP_ACP, CP_MACCP, CP_OEMCP, CP_SYMBOL, CP_THREAD_ACP, CP_UTF7 и CP_UTF8.

Пример 1. COM (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;
Пример 2. COM (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");    // набор записей

$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++;            // инкремент rowcount
    $rs->MoveNext();
}

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

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

$rs = null;
$conn = null;

НазадОглавление Вперёд
Функции поддержки COM для Windows ВверхVARIANT