Forum und email

COM

(No version information available, might be only in CVS)

COM — COM trieda

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

Popis

COM trieda poskytuje štruktúru na integráciu (D)COM komponentov do vašich php skriptov.

Metódy

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

Konštruktor COM triedy. Parametre:

module_name
názov alebo ID triedy požadovaného komponentu.
server_name
názov DCOM servera, z ktorého by sa komponent mal stiahnúť. Ak je NULL, prevezme sa localhost. K aktivovaniu DCOM musí byť com.allow_dcom v php.ini nastavený na TRUE.
codepage
určuje kódovú stránku, ktorá sa používa na konvertovanie php-reťazcov na unicode-reťazce a naopak. Možné hodnoty sú CP_ACP, CP_MACCP, CP_OEMCP, CP_SYMBOL, CP_THREAD_ACP, CP_UTF7 a CP_UTF8.

Example#1 COM príklad (1)

// spustenie wordu
$word = new COM("word.application") or die("Nemozno instanciovat Word");
print "Word nacitany, verzia {$word->Version}\n";

//aktivovat ho
$word->Visible = 1;

//otovorit prazdny dokument
$word->Documents->Add();

//urob nejake haluze
$word->Selection->TypeText("Toto je test...");
$word->Documents[1]->SaveAs("Haluz.doc");

//zatvorenie wordu
$word->Quit();

//uvolnit objekt
$word->Release();
$word = null;

Example#2 COM príklad (2)

$conn = new COM("ADODB.Connection") or die("Nemozno nastartovat 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++;            // inkrementuje rowcount
    $rs->MoveNext();
}

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

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

$rs = null;
$conn = null;