Link sponsorizzati

Creare documenti di Ms Office con PHP e gli oggetti COM

Articolo scritto da Claudio Garau
Pagina 1 di 4

1. Introduzione: gli oggetti COM

In questa breve guida trattaremo dell'interazione tra PHP e oggetti COM e, sono certo, sarà una buona occasione per studiare le possibilità che ha un linguaggio di scripting server side nel lavorare in associazione con delle librerie di sistema.

Innanzitutto è bene specificare, per chi non li conoscesse, che cosa sono gli oggetti COM.
COM, Component Object Model o in Italiano "Modello ad oggetti per componenti" è una piattaforma realizzata nel 1993 dai tecnici della Microsoft per componenti software.
Essa consente di effettuare comunicazioni tra processi e di creare dinamicamente oggetti (entità dotate di attributi e metodi con cui operare sugli attributi) tramite qualsiasi linguaggio di programmazione che possa supportare questa particolare tecnologia.

Al termine COM si associano spesso atri termini relativi al settore dello sviluppo di applicazioni come per esempio OLE, OLE Automation, ActiveX, COM+ per Windows 2000 e DCOM.

(L'articolo continua più sotto...)

Probabilmente in futuro la tecnologia COM verrà sostituita almeno in parte dal framework .NET, si tratta però di una piattaforma ancora diffusissima.

Quando gli oggetti COM possono essere utilizzati in associazione con un linguaggio per lo scripting server side? Semplice, all'interno di listati che prevedano di produrre comportamenti che coinvolgono il sistema operativo, i software Microsoft e addirittura l'hardware del nostro terminale.

Ovviamente questo particolare tipo di interazione sarà possibile solo se stiamo operando su un server Windows.

Per dimostare quanto affermato riportiamo un piccolo script che svolge una funzione abbastanza curiosa: aprire il lettore CD Rom. Avete presente quando cliccate con il tasto destro del mouse sull'icona del lettore CD Rom e selezionate "Rimuovi" dal menu contestuale? Ebbene questo script fa esattamente la stessa cosa:

<?php
// creiamo un istanza all'oggetto COM di  Windows Media Player
$output = new COM("WMPlayer.OCX");
// lanciamo il comando per l'apertura del lettore CD ROM
$output->cdromcollection->item(0)->eject();
?>
Per svolgere la sua funzione lo script sfrutta un'oggetto COM per Windows Media Player, il noto lettore multimediale integrato nei sistemi Windows, e permette l'apertura del device sfruttando il costrutto eject() che significa appunto "espelli".

Agli oggetti COM sono associate numerose funzioni, per visualizzarle è per esempio possibile accedere ad un qualsiasi programma della suite per l'Office Automation Microsoft Office come Ms Word o Excel e seguire la seguente procedura:

  • premere la combinazione di tasti "Alt+F11" in modo da avviare l'Editor Visual Basic;
  • premere il tasto "F2";
  • trovare la voce "ThisDocument" nell'elenco viasualizzato sul menu di sinistra.
A questo punto, nel frame posto sulla destra verranno visualizzate tutte le voci relative alle funzioni utilizzabili in associazione con l'oggetto COM.
Saranno queste le funzioni che sfrutteremo nei prossimi esempi proposti in questa guida.

Nella stessa categoria...
E-Learning
Corso LinuxCorso Linux
Guida completa al sistema open-source. A partire da 39 €.
Corso MySQLCorso MySQL
Gestione del database open-source. A partire da 49 €.
Corso PHPCorso PHP
Corso completo per la creazione di siti Web dinamici. Sconto -25% sino al 15/02/2012.
Link sponsorizzati