PHP和COM
如果你是一名冒險份子,而且你正在使用CGI、ISAPI或Apache模組版本的Windows系統上運行著PHP,那麼你也可以獲得系統的COM功能。現在,解釋COM(微軟的元件物件模型)的工作留給了微軟和那些大部頭的圖書來完成。然而,知道點COM也沒什麼錯,下面有一個普通的(沒有雙關語,針對很普通)代碼小片斷。
這代碼小片斷使用PHP在後台啟動Microsoft Word、開啟一個新檔案、鍵入一些文本、儲存該檔案然後關閉應用程式:
<?
// create a reference to a new COM component (Word)
$word = new COM("word.application") or die("Can't start Word!");
// print the version of Word that's now in use
echo "Loading Word, v. {$word->Version}<br>";
// set the visibility of the application to 0 (false)
// to open the application in the forefront, use 1 (true)
$word->Visible = 0;
// create a new document in Word
$word->Documents->Add();
// add text to the new document
$word->Selection->TypeText("Testing 1-2-3...");
//save the document in the Windows temp directory
$word->Documents[1]->SaveAs("/Windows/temp/comtest.doc");
// close the connection to the COM component
$word->Quit();
// print another message to the screen
echo "Check for the file...";
?>
假設你正在運行一個內連網Web網站,該網站把資料存放在Microsoft SQL Server資料庫內,你的使用者需要Excel格式的資料。那麼,你可以讓PHP執行必要的SQL查詢並且格式化輸出結果,然後使用COM啟動Excel,把資料轉送給它,最後再把檔案儲存體到使用者的案頭系統內。