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,把數據傳輸給它,最後再把文件存儲到用戶的桌面系統內。