COM

(no version information, might be only in CVS)

COM -- Classe COM

Synopsis

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

Description

La classe COM fournit un environnement d'intégration des composants (D)COM dans vos scripts PHP.

Methods

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

Constructeur de la classe COM. Paramètres :

module_name

nom ou class-id du composant deamndé.

server_name

nom du serveur DCOM, auprès duquel le composant doit être sollicité. Si ce paramètre est NULL, localhost sera utilisé. Pour que les objets DCOM soient accessibles; il faut que com.allow_dcom ait la valeur TRUE dans le fichier php.ini.

codepage

spécifie le code qui est utilisé pour transformer les chaînes de caractères PHP en chaînes unicode, et vice-versa. Les valeurs possibles sont CP_ACP, CP_MACCP, CP_OEMCP, CP_SYMBOL, CP_THREAD_ACP, CP_UTF7 et CP_UTF8.

Exemple 1. Exemple COM (1)

<?php
// démarrage de Word
$word = new COM("word.application") or die("Unable to instanciate Word");
print
"Word lancé, version {$word->Version}\n";
//amener Word devant
$word->Visible = 1;
//cree un document vide
$word->Documents->Add();
//Quelques commandes
$word->Selection->TypeText("Ceci est un test...");
$word->Documents[1]->SaveAs("test.doc");
//Fermeture de word
$word->Quit();
//Libération des ressources
$word->Release();
$word = null;
?>

Exemple 2. Exemple COM (2)

<?php
$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++;            // incrémente le nombre de lignes
    
$rs->MoveNext();
}
$rs->Close();
$conn->Close();
$rs->Release();
$conn->Release();
$rs = null;
$conn = null;
?>