COM

(no version information, might be only in CVS)

COM -- COM klasse

Referentiesamenvatting

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

Beschrijving

De COM klasse geeft een raamwerk om (D)COM componten in je PHP scripts te integreren.

Methodes

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

COM klasse constructor. Parameters:

module_name

naam of klasse-id van het gevraagde component.

server_name

naam van de DCOM server van waar het component gehaald moet worden. Als het NULL is, wordt localhost gebruikt. Om DCOM toe te staan, moet com.allow_dcom in php.ini op TRUE staan.

codepage

geeft de coderingspagina op die gebruikt wordt om php-strings te converteren naar unicode-strings en andersom. Mogelijke waardes zijn CP_ACP, CP_MACCP, CP_OEMCP, CP_SYMBOL, CP_THREAD_ACP, CP_UTF7 en CP_UTF8.

Voorbeeld 1. COM voorbeeld (1)

<?php
// start Word op
$word = new COM("word.application") or die("Kon Word niet starten");
print
"Word versie {$word->Version} geladen\n";

// Brengt het naar voren
$word->Visible = 1;

// Opent een leeg document
$word->Documents->Add();

// Doe wat raars
$word->Selection->TypeText("Dit is een test...");
$word->Documents[1]->SaveAs("Zinloze test.doc");

// Sluit Word
$word->Quit();

// Geeft het object vrij
$word->Release();
$word = null;
?>

Voorbeeld 2. COM voorbeeld (2)

<?php
$conn
= new COM("ADODB.Connection") or die("Kan ADO niet starten");
$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++;            // tel er eentje op bij rowcount
    
$rs->MoveNext();
}

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

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

$rs = null;
$conn = null;
?>