明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

PHP腳本的10個(gè)技巧(轉(zhuǎn)自ZDNet) --PHP與COM

[摘要]PHP和COM如果你是一名冒險(xiǎn)份子,而且你正在使用CGI、ISAPI或Apache模塊版本的Windows系統(tǒng)上運(yùn)行著PHP,那么你也可以獲得系統(tǒng)的COM功能。現(xiàn)在,解釋COM(微軟的組件對(duì)象模型)...
PHP和COM

如果你是一名冒險(xiǎn)份子,而且你正在使用CGI、ISAPI或Apache模塊版本的Windows系統(tǒng)上運(yùn)行著PHP,那么你也可以獲得系統(tǒng)的COM功能,F(xiàn)在,解釋COM(微軟的組件對(duì)象模型)的工作留給了微軟和那些大部頭的圖書來完成。然而,知道點(diǎn)COM也沒什么錯(cuò),下面有一個(gè)普通的(沒有雙關(guān)語,針對(duì)很普通)代碼小片斷。

這代碼小片斷使用PHP在后臺(tái)啟動(dòng)Microsoft Word、打開一個(gè)新文件、鍵入一些文本、保存該文件然后關(guān)閉應(yīng)用程序:

<?
// 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...";
?>

假設(shè)你正在運(yùn)行一個(gè)內(nèi)聯(lián)網(wǎng)Web站點(diǎn),該站點(diǎn)把數(shù)據(jù)存放在Microsoft SQL Server數(shù)據(jù)庫內(nèi),你的用戶需要Excel格式的數(shù)據(jù)。那么,你可以讓PHP執(zhí)行必要的SQL查詢并且格式化輸出結(jié)果,然后使用COM啟動(dòng)Excel,把數(shù)據(jù)傳輸給它,最后再把文件存儲(chǔ)到用戶的桌面系統(tǒng)內(nèi)。