Domanda

Sto provando a chiamare un oggetto COM da PHP usando l'estensione di interoperabilità COM. Una funzione richiede un OLE_COLOR come argomento? Esiste un modo per passare questo tipo di valore da PHP?

Ho provato a passare un semplice valore intero senza successo.

$this->oBuilder->Font->Color = 255;
È stato utile?

Soluzione

PHP può definire le costanti che la COM espone automaticamente.

set_ini (' com.autoregister-typelib ', true);

o manualmente

com_load_typelib ($ typelib_name);

Ma se OLE_COLOR è un oggetto invece di un numero intero, una stringa o un'altra primitiva
l'utilizzo di costanti (o numeri interi) non funzionerà.

$Color = new COM('ColorClass');
$Color->set_color_function($red, $green, $blue);

O qualcosa di simile.

Altri suggerimenti

Quando ho chiamato le funzioni COM da PHP, le ho appena passate nella chiamata. Quindi il mio vecchio codice ha:

$myComObject = new COM("MY_COM_OBJECT");
$myComObject->Myfunction( myVar1, myVar2, 'my string var');
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top